我试图绘制一个熊猫时间序列,但我希望将自时间序列开始以来的时间而不是y轴上的实际时间作为X轴。
是否有任何方便的方式来格式化它或将我的时间序列转换为时间增量序列?
答案 0 :(得分:1)
通过索引将第一个值减去DatetimeIndex
:
s = pd.Series([1,8,9], index= pd.date_range('2015-01-01', periods=3, freq='H'))
print (s)
2015-01-01 00:00:00 1
2015-01-01 01:00:00 8
2015-01-01 02:00:00 9
Freq: H, dtype: int64
s.index = (s.index - s.index[0])
print (s)
00:00:00 1
01:00:00 8
02:00:00 9
dtype: int64
如有必要,将TimedeltaIndex
转换为秒,使用total_seconds
或days
(如果DatetimeIndex
中没有时间,则使用秒:
s.index = (s.index - s.index[0]).total_seconds()
print (s)
0.0 1
3600.0 8
7200.0 9
dtype: int64