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

如何用Python将Pandas DataFrame行转为键-列表值对

Pandas DataFrame 格式转换方案

当然有,直接用Pandas的内置分组聚合方法就能实现,完全不需要写循环,都是矢量化操作,效率很高。

实现代码:

首先构造示例数据(如果已有DataFrame可跳过这一步):

import pandas as pd

df = pd.DataFrame({
    'id': [1, 2, 3],
    'name': ['AAA', 'BBB', 'CCC'],
    'value1': [1.0, 2.0, 3.0],
    'value2': [1.5, 2.3, 3.6],
    'value3': [1.8, 2.5, 3.7]
})

方法一:使用groupby + apply(list)

result = df.groupby('name')[['value1', 'value2', 'value3']].apply(list).reset_index(name='value')

方法二:使用groupby + agg(list)(更推荐,性能更优)

result = df.groupby('name')[['value1', 'value2', 'value3']].agg(list).reset_index(name='value')

执行后得到的result就是你需要的格式:

name           value
0   AAA  [1.0, 1.5, 1.8]
1   BBB  [2.0, 2.3, 2.5]
2   CCC  [3.0, 3.6, 3.7]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 01:31:09