使用每小时分辨率时间戳创建8760数据帧

时间:2017-04-24 19:30:20

标签: python-2.7 pandas datetime-format python-datetime

有点天真的问题。我想创建一个Expression of type WebOrderStatusUpdater doesn't conform to expected type T,以小时分辨率(8760个值)跨越整个日历年。如何操作教程中的以下几行来提取上一年的数据。

dataframe

基本上我想用1/1/2016替换start = pd.Timestamp(datetime.date.today(), tz=time_zone) #used for testing end = start + pd.Timedelta(days=365) #to get all day values ,然后为我的分析提取历史预测值。

1 个答案:

答案 0 :(得分:2)

您可以通过从结束日期中减去一年来构建start

date_str = '1/1/2016'
start = pd.to_datetime(date_str) - pd.Timedelta(days=365)
hourly_periods = 8760
drange = pd.date_range(start, periods=hourly_periods, freq='H')

然后,当您准备好制作数据框时,请设置index=drange,例如:

# toy example data
data = list(range(len(drange)))

# create data frame with drange index
df = pd.DataFrame(data, index=drange)

有关详情,请参阅date_rangeTimedeltas的Pandas文档。