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

如何用Python Pandas将含列表的单列转换为长格式?

解决方案

你可以通过复制原列表列后使用explode()方法实现需求,具体步骤如下:

1. 构造示例DataFrame

import pandas as pd

data = {
    'uniqId': ['1234', '2534', '3469'],
    'DeptId': ['BKNG', 'FINA', 'ASKG'],
    'Date': ['2023-09-05', '2023-09-04', '2023-09-05'],
    'values': [['VGM', 'FJK'], ['GTD', 'WEH'], ['MUG', 'PIS']]
}

df = pd.DataFrame(data)

2. 执行拆分操作

先复制values列到新列values_1,再对values_1列执行拆分:

# 复制原列表列到新列
df['values_1'] = df['values']
# 拆分values_1列的列表元素为单独行,保留其他列内容
result_df = df.explode('values_1')

3. 调整列顺序(可选)

如果需要把values_1放在第一列,可调整列顺序:

result_df = result_df[['values_1', 'uniqId', 'DeptId', 'Date', 'values']]

最终输出结果

执行后得到的result_df即为你需要的格式:

values_1uniqIdDeptIdDatevalues
VGM1234BKNG2023-09-05[VGM, FJK]
FJK1234BKNG2023-09-05[VGM, FJK]
GTD2534FINA2023-09-04[GTD, WEH]
WEH2534FINA2023-09-04[GTD, WEH]
MUG3469ASKG2023-09-05[MUG, PIS]
PIS3469ASKG2023-09-05[MUG, PIS]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 15:22:27