对于半小时的间隔,我可以使用Pandas TimeDeltaIndex,PeriodIndex或DateTimeIndex吗?

时间:2016-09-23 07:48:15

标签: python datetime pandas intervals

我有一个数据值表,应该用半小时的时间间隔编制索引,并且我已经用Pandas和Numpy处理它们了。目前,他们使用的是CSV文件,我使用read_csv将它们导入到只有interval-endpoint作为索引的数据框中。我对此感到不舒服,并希望将间隔本身作为索引。

我不知道是否使用DateTimeIndexPeriodIndexTimedeltaIndex ...所有这些在实践中看起来都非常类似于我。我的运营包括

  • 查找特定时间间隔
  • 检查特定时间间隔内是否包含DateTime
  • 交叉点和(设置)间隔差异
  • 拆分和加入间隔

熊猫甚至可以做所有这些吗?这是可取的吗?我已经在使用this interval library,使用Pandas tslibperiod会更好吗?

1 个答案:

答案 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