将分组后的子级转置为列 pandas/python

2024-10-03 11:23:07 发布

您现在位置:Python中文网/ 问答频道 /正文

gp1.groupby(by=['ID','CD'])['BALANCE\u AM'].sum()

ID          CD
4332        5                    0.0
            58                   0.0
            123              22656.0
756423      47              645087.0
            123             227655.0

我想为每种类型的CD创建列,余额总和是多少

期望输出

ID          5     58     123       47
4332        0     0      22656.0   NaN
756423      NaN   NaN    227655.0  645087.0

Tags: id类型bycdnanam余额sum
2条回答

如有必要,在列中添加^{}^{}ID

df = gp1.groupby(by=['ID', 'CD'])['BALANCE_AM'].sum().unstack().reset_index()

另一种方法是使用pivot_table而不是groupby

gp1.pivot_table(values='BALANCE_AM', index='ID', columns='CD', aggfunc='sum')

相关问题 更多 >