You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Pandas拆分DataFrame列并合并同名列求和?

Pandas实现列拆分与同名列求和合并

步骤1:构造原始DataFrame

先把给定的原始数据转换成Pandas DataFrame:

import pandas as pd

data = {
    '(A,B)': [0, 1, 2],
    '(B,C)': [3, 1, 2],
    '(D,B)': [0, 3, 4],
    '(E,F)': [1, 0, 2]
}
df = pd.DataFrame(data)

步骤2:拆分列

遍历每个原始列,去掉列名的括号并拆分成两个字段,为每个字段生成值与原列相同的新列,最后横向拼接所有新列:

split_cols = []
for col in df.columns:
    # 提取列名里的两个字段
    col1, col2 = col.strip('()').split(',')
    # 生成对应两个新列
    split_cols.append(pd.DataFrame({col1: df[col], col2: df[col]}))
# 拼接所有拆分后的列
df_split = pd.concat(split_cols, axis=1)

执行后得到拆分结果:

A  B  B  C  D  B  E  F
0  0  0  3  3  0  0  1  1
1  1  1  1  1  3  3  0  0
2  2  2  2  2  4  4  2  2

步骤3:合并同名列求和

通过按列名分组并求和,完成同名列的合并:

df_final = df_split.groupby(df_split.columns, axis=1).sum()

最终结果如下:

A  B  C  D  E  F
0  0  3  3  0  1  1
1  1  5  1  3  0  0
2  2  6  2  4  2  2

内容的提问来源于stack exchange,提问作者karthik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 01:05:20