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

如何在Pandas中将同一主键下的多值列拆分为多行?

Pandas实现多值列拆分多行

你可以通过str.split()结合explode()方法快速实现这个需求,具体步骤如下:

1. 创建示例数据集

首先还原你的输入数据:

import pandas as pd

df = pd.DataFrame(
    data={
        'ID': ['1','2','3'],
        'Genre': ['Adventure|Children|Fantasy','Horror','Comedy|Drama']
    }
)

2. 拆分并展开多值列

使用str.split('|')将Genre列按|分割为列表,再调用explode()方法把列表中的每个元素拆分为单独行,同时保留对应的ID:

df_result = df.assign(Genre=df['Genre'].str.split('|')).explode('Genre')

3. 查看结果

执行上述代码后,df_result的输出就是你想要的格式:

ID      Genre
0   1   Adventure
0   1   Children
0   1   Fantasy
1   2   Horror
2   3   Comedy
2   3   Drama

(注:如果需要重置索引,可以额外添加.reset_index(drop=True))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 11:35:01