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

如何使用pandas pivot转换Primary ID列,将匹配Secondary ID展示在相邻列

实现方法

你需要先给每个Primary ID分组后的Secondary ID生成对应序号,再用序号作为pivot的列维度即可实现需求,完整代码如下:

import pandas as pd

# 假设你的原始数据已经存入df,列名为Primary ID、Secondary ID
# 第一步:为每个Primary ID下的Secondary ID生成1、2、3的顺序编号
df['seq'] = df.groupby('Primary ID').cumcount() + 1

# 第二步:执行pivot转换
res = df.pivot(
    index='Primary ID',
    columns='seq',
    values='Secondary ID'
)

# 第三步:重命名列、填充空值为"-"、重置索引
res.columns = [f'Secondary {i}' for i in res.columns]
res = res.fillna('-').reset_index()

# 输出res即可得到目标格式结果
print(res)

如果需要调整Secondary ID的排列顺序,可以在生成seq列之前先做排序,比如按Secondary ID从小到大排列就添加一行:

df = df.sort_values(['Primary ID', 'Secondary ID'])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.13 21:00:03