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

如何从Pandas DataFrame列的嵌套字典中提取simpleText值

提取DataFrame字典列中的simpleText值

问题原因

你的代码存在两个可能的问题:

  • 索引路径错误:样本数据里simpleText是key1的直接子键,并非key2的子键,原代码的索引层级写错了
  • 数据类型不匹配:如果colName1的内容是字符串格式的字典(而非Python原生字典对象),直接用键索引会触发报错

解决方案

情况1:列内容是Python字典对象

修正索引路径即可:

df1['XYZ'] = df1['colName1'].apply(lambda x: x['key1']['simpleText'])

情况2:列内容是字符串格式的字典

先将字符串转换为Python字典,再提取目标值:

import ast
import pandas as pd

# 把字符串格式的字典解析为Python字典
df1['colName1'] = df1['colName1'].apply(ast.literal_eval)
# 提取simpleText对应的值
df1['XYZ'] = df1['colName1'].apply(lambda x: x['key1']['simpleText'])

稳健写法(避免键缺失报错)

如果部分行可能缺少key1或simpleText键,用get方法返回默认值(比如None)避免报错:

df1['XYZ'] = df1['colName1'].apply(lambda x: x.get('key1', {}).get('simpleText', None))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 17:12:29