我有一个这样的数据框:
0 0.131567
1 0.098878
2 0.102000
. ...
94574 0.088912
94575 0.089399
我知道它对应于一些时间间隔,例如。 15:57:32 - 16:50:05所以我想将索引从数字序列转换为时间戳序列。 所以输出看起来像这样
15:57:32.000000 0.131567
15:57:32.031000 0.102000
... ...
16:50:04.969000 0.088912
16:50:04.000000 0.089399`
也许我可以使用以下代码来完成它:
> rng = date_range('15:57:32.000000','16:50:04.000000' , freq=??)
> ts = Series(data, index=rng)
但是我应该如何选择频率呢? 有没有其他方法可以做到这一点,或者我在正确的道路上?
答案 0 :(得分:1)
您可以在freq字段中指定乘数。 help(pd.date_range)
给出:
freq:string或DateOffset,默认为'D'(每日日历) 频率字符串可以具有倍数,例如'5H'
rng = pd.date_range('15:57:32','16:50:04',freq='33328us')
然后len(rng)
正是94576
:
2016-03-15 15:57:32 0.881135
2016-03-15 15:57:32.033328 0.237618
2016-03-15 15:57:32.066656 0.761269
....
2016-03-15 16:50:03.962272 0.820865
2016-03-15 16:50:03.995600 0.181762