如何按parent分组求和value列并生成新DataFrame?
Pandas分组求和实现方案
可以通过以下两种简洁方式实现需求:
方法一:先分组求和再调整结构
# 按parent分组对value求和,转换为DataFrame并重置索引 result_df = df.groupby('parent')['value'].sum().reset_index() # 调整列顺序匹配目标格式 result_df = result_df[['value', 'parent']]
方法二:先筛选列再分组求和
# 先保留需要的列,排除length selected_df = df[['parent', 'value']] # 分组求和并重置索引 result_df = selected_df.groupby('parent').sum().reset_index() # 调整列顺序 result_df = result_df[['value', 'parent']]
代码说明:
groupby('parent'):按照parent列的唯一值进行分组sum():对每个分组内的value列计算总和reset_index():将原本作为索引的parent列转为普通数据列,避免索引混乱- 最后调整列顺序
['value', 'parent'],让结果列排列与目标格式一致
执行后得到的结果DataFrame如下:
value parent 0 23 X 1 32 Y 2 11 Z
内容的提问来源于stack exchange,提问作者JJbox
相关产品推荐
相关产品推荐

