從HDF5文件導入數據後,我的庫存數據索引已消失。將pandas datetime64 pandas dataframe列設置爲不帶時間分量的datetimeindex
我的數據框「Date」中的一列是Datetime64。如何將此日期列轉換爲datetimeindex
列,但末尾沒有時間部分。
因此,切片這樣的數據幀data.ix["2016-01-01":"2016-02-06"]
的作品。
從HDF5文件導入數據後,我的庫存數據索引已消失。將pandas datetime64 pandas dataframe列設置爲不帶時間分量的datetimeindex
我的數據框「Date」中的一列是Datetime64。如何將此日期列轉換爲datetimeindex
列,但末尾沒有時間部分。
因此,切片這樣的數據幀data.ix["2016-01-01":"2016-02-06"]
的作品。
IIUC,從樣本數據幀起始爲:
Date x
0 2016-01-01 20:01 1
1 2016-01-02 20:02 2
,你可以這樣做:
Date x
2016-01-01 2016-01-01 20:01 1
2016-01-02 2016-01-02 20:02 2
使用:
df = df.set_index(pd.DatetimeIndex(df['Date']).date)
只與date
部分返回您DatetimeIndex
將列轉換爲索引。你不需要修剪它的工作時間部分。
df = pd.DataFrame({
'ts': pd.date_range('2015-12-20', periods=10, freq='12h'),
'stuff': np.random.randn(10)
})
print(df)
stuff ts
0 0.942231 2015-12-20 00:00:00
1 1.229604 2015-12-20 12:00:00
2 -0.162319 2015-12-21 00:00:00
3 -0.142590 2015-12-21 12:00:00
4 1.057184 2015-12-22 00:00:00
5 -0.370927 2015-12-22 12:00:00
6 -0.358605 2015-12-23 00:00:00
7 -0.561857 2015-12-23 12:00:00
8 -0.020714 2015-12-24 00:00:00
9 0.552764 2015-12-24 12:00:00
print(df.set_index('ts').ix['2015-12-21':'2015-12-23'])
stuff
ts
2015-12-21 00:00:00 -0.162319
2015-12-21 12:00:00 -0.142590
2015-12-22 00:00:00 1.057184
2015-12-22 12:00:00 -0.370927
2015-12-23 00:00:00 -0.358605
2015-12-23 12:00:00 -0.561857
Thans Fabio,這似乎工作。考慮到許多研究領域可能在同一日期有很多數據讀數,是否可以將另一個字段設置爲索引以及日期,並且可以同時訪問它們?例如說溫度 - 電臺,然後以日期爲指標。或股票:股票名稱,然後日期? – yoshiserry
很高興幫助。但請考慮發佈另一個問題來尋求其他答案。最後,如果我的答案適合您的目的,請考慮接受它以幫助其他用戶解決同樣的問題。 –