我知道有一个简单的实现可以做到这一点,但我不记得语法。有一个简单的熊猫时间序列,我想按月汇总数据。具体来说,我想在数月和数年内添加数据以获得一些摘要。可以用切片编写它,但我记得看到自动执行它的语法。
import pandas as pd
df = Series(randn(100), index=pd.date_range('2012-01-01', periods=100))
一个多指数系列,其中年份和子数据编入月份将是一等奖。
部分答案:
ds.resample('M', how=sum) # for calendar monthly
ds.resample('A', how=sum) # for calendar yearly
任何想法如何优雅地按年计算多指数?
答案 0 :(得分:15)
In [1]: import pandas as pd
from numpy.random import randn
In [2]: df = Series(randn(500), index=pd.date_range('2012-01-01', periods=500))
In [3]: s2 = df.groupby([lambda x: x.year, lambda x: x.month]).sum()
In [4]: s2
Out[4]:
2012 1 3.853775
2 4.259941
3 4.629546
4 -10.812505
5 -16.383818
6 -5.255475
7 5.901344
8 13.375258
9 1.758670
10 6.570200
11 6.299812
12 7.237049
2013 1 -1.331835
2 3.399223
3 2.011031
4 7.905396
5 1.127362
dtype: float64