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

如何将CSV中name列按chain列分组?求高效实现方法

按Chain分组并将Name列转换为多列的高效实现方式

可以用Pandas的分组计数+透视表来快速实现需求,这是处理这类表格重塑场景的高效方案,代码逻辑清晰且性能优异:

步骤说明

  1. 读取CSV数据:用pandas.read_csv加载你的CSV文件。
  2. 生成组内序号:为每个chain分组下的name条目分配递增序号,确保同一分组内的条目能按顺序对应到同一行。
  3. 透视表重塑结构:通过透视表将chain转为列名,序号作为行索引,name作为单元格值,直接得到目标格式。

完整代码示例

import pandas as pd

# 替换为你的CSV文件路径
df = pd.read_csv("your_data.csv")

# 为每个chain分组内的条目生成从1开始的序号
df["row_id"] = df.groupby("chain").cumcount() + 1

# 执行透视表转换
output_df = df.pivot(index="row_id", columns="chain", values="name")

# 移除列索引的名称(可选,让输出更贴近示例格式)
output_df.columns.name = None

# 查看结果
print(output_df)

补充说明

  • 如果不同chain的条目数量不一致,结果中较短的列会出现NaN,可以用output_df.fillna("")将空值替换为空白字符串。
  • 该方案基于Pandas的向量化操作,比手动循环拼接或多次merge效率高得多,适合处理大容量CSV数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 08:35:21