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

如何将字典列表按指定key生成pandas DataFrame并支持自定义列名

import pandas as pd
# 示例输入
sample_list = [{1:2.1, 2:4.5, 5:6.4}, {1:4.3, 2:5.4, 5:1}, {1:0.07, 2:9.5, 5:7.1}]
target_key = 2

提取指定key生成对应列名的DataFrame

两种常用实现方式:

  • 方式1:用pandas内置的from_records方法直接指定要提取的列,代码最简
df = pd.DataFrame.from_records(sample_list, columns=[target_key])
  • 方式2:手动遍历提取值后构造,适合需要对值做额外预处理的场景,同时可以处理字典无对应key的情况(避免KeyError)
# 不存在目标key时默认填充NaN
values = [d.get(target_key) for d in sample_list]
df = pd.DataFrame(values, columns=[target_key])

运行后得到列名为2的DataFrame,输出如下:

2
0  4.50
1  5.40
2  9.50

对生成的列进行重命名

两种常用实现方案:

  • 方案1:构造DataFrame时直接指定新列名,无需二次修改
df = pd.DataFrame([d.get(target_key) for d in sample_list], columns=['two'])
  • 方案2:对已生成的DataFrame执行重命名操作,适合多列批量重命名的场景
# 先提取得到列名为2的DataFrame
df = pd.DataFrame.from_records(sample_list, columns=[target_key])
# 执行重命名
df = df.rename(columns={target_key: 'two'})

运行后得到列名为two的DataFrame,输出如下:

two
0  4.50
1  5.40
2  9.50

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 07:27:02