Python 数据帧上的组内计算
我有一个数据框,其形式如下:Python 数据帧上的组内计算,python,pandas,grouping,dataframe,Python,Pandas,Grouping,Dataframe,我有一个数据框,其形式如下: code date count AA 201205 1 AA 201309 2 AA 201310 12 AA 201410 7 BB 201305 3 BB 201309 1 CC 201404 5 日期的格式为yyyymm 我想根据“代码”
code date count
AA 201205 1
AA 201309 2
AA 201310 12
AA 201410 7
BB 201305 3
BB 201309 1
CC 201404 5
日期的格式为yyyymm
我想根据“代码”列中的值对数据进行分组,并将过去6个月以及之前所有时间内每个代码值的计数值相加。因此,新的数据帧看起来像:
code last 6 months before that
AA 7 15
BB 0 4
CC 5 0
关于实现这一目标的最佳方法有什么想法
提前感谢您的帮助。也许:
>>> gr = df.groupby(['code', df['date'] > 201403])
>>> pv = gr['count'].sum().unstack().fillna(0)
>>> namer = {True:'last 6 months', False:'before that'}.get
>>> pv.columns = list(map(namer, pv.columns))
>>> pv
before that last 6 months
code
AA 15 7
BB 4 0
CC 0 5