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

如何在Pandas DataFrame中展开列表列生成对应新行

拆分Pandas DataFrame中列表列至单独行

这事儿用Pandas的explode()方法就能完美解决,完全适配你要的场景!

核心解决方案

假设你的DataFrame变量名为df,只需要一行代码:

df_exploded = df.explode('category', ignore_index=True)

方法解释

  • explode('category'):指定要拆分的列是category,该列中的每个列表元素都会被拆成独立的行,同时保留原行的id值。
  • ignore_index=True:让生成的新DataFrame重置索引,避免出现重复的原索引值,让结果更整洁。

示例效果

拿你给出的样例数据来说,原第一行:

id: 17074820, category: [15153999, 15213210, 7668302]

运行代码后会变成三行:

idcategory
1707482015153999
1707482015213210
170748207668302

兼容旧版本Pandas(低于0.25)

如果你的Pandas版本比较老,explode()方法还没上线,可以用下面的替代方案:

# 先把category列的列表拆成多列,再堆叠成行
df_exploded = df.assign(category=df['category'].apply(pd.Series)) \
               .stack() \
               .reset_index(level=1, drop=True) \
               .reset_index(name='category')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:56:59