2
我想按日期聚合一個Pandas DataFrame,然後通過日期索引到結果中,但我似乎無法將它編入索引。索引按日期分組的Pandas數據幀並彙總?
from datetime import date, datetime
import pandas as pd
import numpy as np
ts = pd.DataFrame({'data': np.random.randn(60)}, index=pd.date_range('1/1/2000', periods=60, freq='2h'))
g = ts.groupby(ts.index.date).agg(np.mean)
print(g)
data
2000-01-01 0.090038
2000-01-02 0.099970
2000-01-03 -0.619274
2000-01-04 0.027040
2000-01-05 -0.323205
首先,我希望該指數是一個DatetimeIndex
,但:
print(g.index)
Index([2000-01-01, 2000-01-02, 2000-01-03, 2000-01-04, 2000-01-05], dtype='object')
g.index[0]
datetime.date(2000, 1, 1)
OK,讓我們嘗試建立索引:
g['2000-01-01']
KeyError: u'no item named 2000-01-01'
g[date(2000, 01, 01)]
KeyError: u'no item named 2000-01-01'
g[datetime(2000, 01, 01)]
KeyError: u'no item named 2000-01-01 00:00:00'
g[pd.to_datetime('2000-01-01')]
KeyError: u'no item named 2000-01-01 00:00:00'
我甚至不能索引它與索引本身!
g[g.index[0]]
KeyError: u'no item named 2000-01-01'
我在想什麼?爲什麼不分組/彙總DatetimeIndex
a DatetimeIndex
或至少PeriodIndex
的結果?有辦法讓它成爲一個嗎?
太棒了,謝謝! –
請注意,'TimeGrouper'已棄用,請改用'Grouper'。 – Primoz