Python Pandas - 从 TimeDeltaIndex 创建一个系列并设置结果系列的索引
使用to_series()方法从Pandas中的TimeDeltaIndex创建一个系列。所述索引参数用于设定所得到的序列的索引。
首先,导入所需的库-
import pandas as pd
创建一个TimeDeltaIndex对象。我们已经使用'data'参数设置了类似timedelta的数据-
tdIndex = pd.TimedeltaIndex(data =['10 day 5h 2 min 3us 10ns', '+22:39:19.999999', '2 day 4h 03:08:02.000045', '+21:15:45.999999'])
显示TimedeltaIndex-
print("TimedeltaIndex...\n", tdIndex)
将TimeDeltaIndex转换为Series并设置结果系列的索引。我们已经使用“index”参数设置了索引-
print("\nTimeDeltaIndex to series with new index...\n", tdIndex.to_series(index=['Date1','Date2','Date3','Date4']))
示例
以下是代码-
import pandas as pd #CreateaTimeDeltaIndexobject # We have set the timedelta-like data using the 'data' parameter tdIndex = pd.TimedeltaIndex(data =['10 day 5h 2 min 3us 10ns', '+22:39:19.999999', '2 day 4h 03:08:02.000045', '+21:15:45.999999']) #displayTimedeltaIndex print("TimedeltaIndex...\n", tdIndex) #ReturnadataframeofthecomponentsofTimeDeltas print("\nThe Dataframe of the components of TimeDeltas...\n", tdIndex.components) #ReturnTimeDeltaIndexasobjectndarray print("\nReturn TimeDeltaIndex as object ndarray ofdatetime.datetimeobjects...\n", tdIndex.to_pytimedelta()) #ConvertTimeDeltaIndextoSeriesandsettheindexoftheresultingseries # We have set the index using the "index" parameter print("\nTimeDeltaIndex to series with new index...\n", tdIndex.to_series(index=['Date1','Date2','Date3','Date4']))输出结果
这将产生以下代码-
TimedeltaIndex... TimedeltaIndex(['10 days 05:02:00.000003010', '0 days 22:39:19.999999', '2 days 07:08:02.000045', '0 days 21:15:45.999999'], dtype='timedelta64[ns]', freq=None) The Dataframe of the components of TimeDeltas... days hours minutes seconds milliseconds microseconds nanoseconds 0 10 5 2 0 0 3 10 1 0 22 39 19 999 999 0 2 2 7 8 2 0 45 0 3 0 21 15 45 999 999 0 Return TimeDeltaIndex as object ndarray ofdatetime.datetimeobjects... [datetime.timedelta(days=10, seconds=18120, microseconds=3) datetime.timedelta(seconds=81559, microseconds=999999) datetime.timedelta(days=2, seconds=25682, microseconds=45) datetime.timedelta(seconds=76545, microseconds=999999)] TimeDeltaIndex to series with new index... Date1 10 days 05:02:00.000003010 Date2 0 days 22:39:19.999999 Date3 2 days 07:08:02.000045 Date4 0 days 21:15:45.999999 dtype: timedelta64[ns]