我有一个数据值表,应该用半小时的时间间隔编制索引,并且我已经用Pandas和Numpy处理它们了。目前,他们使用的是CSV文件,我使用read_csv
将它们导入到只有interval-endpoint作为索引的数据框中。我对此感到不舒服,并希望将间隔本身作为索引。
我不知道是否使用DateTimeIndex
,PeriodIndex
或TimedeltaIndex
...所有这些在实践中看起来都非常类似于我。我的运营包括
熊猫甚至可以做所有这些吗?这是可取的吗?我已经在使用this interval library,使用Pandas tslib
和period
会更好吗?
答案 0 :(得分:0)
如果你只需要一个时间间隔为30分钟的系列,你可以这样做:
import pandas as pd
import datetime as dt
today = dt.datetime.date()
yesterday = dt.datetime.date()-dt.timedelta(days=1)
time_range = pd.date_range(yesterday,today, freq='30T')
现在您可以使用它来设置索引
pd.DataFrame(0, index=time_range,columns=['yourcol'])
Out[35]:
yourcol
2016-09-25 00:00:00 0
2016-09-25 00:30:00 0
2016-09-25 01:00:00 0
2016-09-25 01:30:00 0
2016-09-25 02:00:00 0
这将是一个DateTimeIndex
您可以在此处阅读有关熊猫时间间隔的更多信息:http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases