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

如何将Pandas DataFrame中的字符串列表转换为多行?

如何展开DataFrame中的列表列?

嘿,这个需求用pandas的explode()方法就能轻松搞定,完全适配你这种把列表列拆分成多行的场景!

步骤1:构造原始DataFrame

先把你给出的数据集用代码还原出来:

import pandas as pd

# 构造原始数据
df = pd.DataFrame({
    'mAID': ['A', 'B', 'A', 'A'],
    'MAID': ['D', 'E', 'E', 'F'],
    'PIDs': [['YY', 'ZZ'], ['XY'], ['YY', 'XX'], ['YY', 'XX', 'ZZ']]
})

步骤2:使用explode()展开列表列

只需要一行代码就能完成转换:

# 展开PIDs列的列表,同时重置索引
df_exploded = df.explode('PIDs').reset_index(drop=True)

转换后的结果

运行上面的代码后,df_exploded就是你想要的格式:

mAIDMAIDPIDs
0ADYY
1ADZZ
2BEXY
3AEYY
4AEXX
5AFYY
6AFXX
7AFZZ

简单解释下:explode('PIDs')会把PIDs列里的每个列表元素单独拆成一行,其他列(mAID、MAID)的对应值会自动保留;reset_index(drop=True)是为了让索引重新从0开始连续排列,和你的示例结果完全匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 08:35:50