我重新采样DF以产生一个按季度加总的DF,(半高兴我得到了那么远:-))现在我只想要每年的最后一个季度(我将在其上计算%变化从前一年)。 df看起来像(但是到2012年......);所以我想要一个DF而且只有12-31个日期?
Units
date
2000-06-30 6120
2000-09-30 7346
2000-12-31 5925
2001-03-31 7542
2001-06-30 9916
2001-09-30 9547
2001-12-31 8063
答案 0 :(得分:4)
确保您的索引是DatetimeIndex:
In [0]: df.index = pd.DatetimeIndex(df.index)
现在,您可以从索引中提取各种信息,并使用它来对原始数据框进行子集化:
In [1]: df.ix[df.index.quarter == 4]
Out[1]:
Units
2000-12-31 5925
2001-12-31 8063
计算季度变化的季度:
In [2]: curr = df.ix[df.index.quarter == 4]
In [3]: prev = df.ix[df.index.quarter == 4].shift()
In [4]: curr/prev
Out[4]:
Units
2000-12-31 NaN
2001-12-31 1.360844