我的时间序列中包含与timedeltas相对应的时间戳,但实际时间和日期不起作用。所以我可以假设一些参考时间点作为时间序列的开始。
ts = ref_time + pd.to_timedelta(dat["MILLISEC"], unit="ms")
dat.set_index(ts)
但我想知道ref_time
是否真的需要datetime.datetime
类型,因为我希望它属于datetime.time
类型。但是,我似乎不能将它用作熊猫的索引。那是为什么?
祝你好运!
答案 0 :(得分:1)
我想是的,因为datetime.time
作为python对象没有像timestamp
那样隐式转换为datetime.datetime
:
a = datetime.time(4) + pd.to_timedelta(['10:00:10','00:00:10'])
print (a)
TypeError:+:' datetime.time'不支持的操作数类型和' TimedeltaIndex'
a = datetime.datetime(2017,1,1,4) + pd.to_timedelta(['10:00:10','00:00:10'])
print (a)
DatetimeIndex(['2017-01-01 14:00:10', '2017-01-01 04:00:10'],
dtype='datetime64[ns]', freq=None)
或创建TimedeltaIndex
:
a = pd.Timedelta(4, unit='h') + pd.to_timedelta(['10:00:10','00:00:10'])
print (a)
TimedeltaIndex(['14:00:10', '04:00:10'], dtype='timedelta64[ns]', freq=None)
编辑:
纯python也不支持,请检查this。