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

如何使用Pandas合并CSV文件中指定行的多列数据

可行实现方案

方案1:Python Pandas实现(推荐,处理效率最高)

62000行数据全程处理耗时低于1秒,完全匹配你之前的操作效率要求,代码示例如下:

import pandas as pd

# 读取CSV,统一转字符串格式避免ID、Parent列出现科学计数法或格式错乱
df = pd.read_csv("你的源文件路径.csv", dtype=str)

# 按Name、Parent分组,Data列去重后用逗号拼接
group_df = df.groupby(["Name", "Parent"], as_index=False)["Data"].agg(
    lambda x: ",".join(pd.unique(x))
)

# 生成符合规则的新行
new_rows = group_df.rename(columns={"Parent": "ID"})
new_rows["Parent"] = ""

# 合并原表和新行,输出结果
result_df = pd.concat([df, new_rows], ignore_index=True)
result_df.to_csv("处理后的结果.csv", index=False, encoding="utf-8-sig")

如果你的Data列本身包含逗号,可修改agg逻辑对单个Data值加引号包裹,避免后续CSV解析错乱。

方案2:Excel Power Query实现(无需写代码)

适合没有Python环境的场景,操作步骤如下:

  • 打开Excel,点击「数据」选项卡-「从文本/CSV」,导入你的源CSV文件,选择加载到Power Query编辑器
  • 按住Ctrl选中Name、Parent两列,点击「分组依据」,设置:
    • 新列名:临时表
    • 操作:所有行
  • 点击「添加列」-「自定义列」,输入公式:Text.Combine(List.Distinct(Table.Column([临时表], "Data")), ",")
  • 删除多余的「临时表」列,将Parent列重命名为ID,再新增一列命名为Parent,值留空
  • 点击「主页」-「追加查询」,选择将当前生成的新行表追加到原始表中
  • 最后点击「关闭并上载」,导出为CSV即可,全流程耗时在5秒以内

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 10:39:01