2017-04-24 94 views
0

有點天真的問題。我想創建一個以小時分辨率(8760值)爲單位的完整日曆年的dataframe。我如何操作教程中的以下幾行來提取上一年的數據。用小時分辨率時間戳創建8760數據幀

start = pd.Timestamp(datetime.date.today(), tz=time_zone) #used for testing 
end = start + pd.Timedelta(days=365) #to get all day values 

基本上我想2016年1月1日取代today(),再拉歷史的預測值,我的分析。

回答

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文檔。