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

Python如何从DataFrame多列生成列表新列并添加到原数据框

解决方案

直接将需要合并的列转为numpy数组后转嵌套列表,赋值给新列即可实现需求,完整可运行代码如下:

import pandas as pd
import numpy as np

d = {'col1': [0, 2, 4], 'col2': [1, 3, 5], 'col3': [2, 4, 8]}
df = pd.DataFrame(d)
# 新增col_list列,每行为对应行col1、col2的取值组成的列表
df['col_list'] = df[['col1', 'col2']].values.tolist()
print(df)

如果有更复杂的字段拼接逻辑,也可以用apply方法实现:

df['col_list'] = df.apply(lambda row: [row['col1'], row['col2']], axis=1)

原代码问题说明

你之前的写法把整个二维numpy数组当成单个元素传入,和DataFrame的3行行数不匹配,所以无法正常生成新列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 09:36:05