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

如何通过Pandas将指定行的列表合并为单行(附示例图)

使用Pandas合并指定行内的列表内容为单行

以下针对几种常见的需求场景给出具体实现方案:

场景1:将每行的列表列元素合并为字符串

如果你的DataFrame中某一列是列表类型,需要把每行里的列表元素合并成单个分隔字符串(比如逗号分隔),可以用apply结合字符串join方法:

import pandas as pd

# 构造示例数据
df = pd.DataFrame({
    'id': [1, 2, 3],
    'content': [['a', 'b', 'c'], ['d', 'e'], ['f']]
})

# 将content列的列表合并为逗号分隔的字符串
df['merged_content'] = df['content'].apply(lambda x: ', '.join(x))

执行后输出结果:

idcontentmerged_content
1['a', 'b', 'c']a, b, c
2['d', 'e']d, e
3['f']f

场景2:合并指定多行的列表内容到同一行

如果需要将指定的多行(比如id为1和2的行)的列表内容合并成单行,可按以下步骤操作:

# 筛选目标行(这里筛选id为1、2的行)
selected_rows = df[df['id'].isin([1, 2])]

# 嵌套展开列表并合并为字符串
merged_list = [item for sublist in selected_rows['content'] for item in sublist]
merged_str = ', '.join(merged_list)

# 生成结果DataFrame
result_df = pd.DataFrame({'id': ['merged'], 'merged_content': [merged_str]})

输出结果:

idmerged_content
mergeda, b, c, d, e

场景3:按分组合并列表内容

如果需要按某列分组,将每组内的所有列表元素合并成单行,用groupby结合agg实现:

# 构造分组示例数据
df = pd.DataFrame({
    'group': ['A', 'A', 'B'],
    'content': [['a', 'b'], ['c'], ['d', 'e']]
})

# 分组合并列表为字符串
grouped_df = df.groupby('group')['content'].agg(
    lambda x: ', '.join([item for sublist in x for item in sublist])
).reset_index()

输出结果:

groupcontent
Aa, b, c
Bd, e

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 13:56:38