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

如何用Python从Excel列的嵌套字典数组中提取指定字段?

提取嵌套字典数组中的指定字段并拆分表格

针对你的需求,我们需要处理Excel中嵌套结构的字典数组,将每个条目对应的category、classification和Count字段提取出来,并与原SID关联展开成多行表格。以下是完整的解决方案:

解决方案代码

import pandas as pd
import ast

# 读取目标Excel文件
df = pd.read_excel("your_input_file.xlsx")

# 定义字段提取函数
def parse_summary(summary_str):
    # 将字符串形式的数组转换为Python列表对象
    summary_data = ast.literal_eval(summary_str)
    # 遍历每个字典,提取嵌套字段
    result = []
    for entry in summary_data:
        # 从嵌套的tid字典中提取字段,用get避免KeyError
        result.append({
            "category": entry.get("tid", {}).get("category"),
            "classification": entry.get("tid", {}).get("classification"),
            "Count": entry.get("Count")
        })
    return result

# 对Summary列应用提取函数
df["extracted_data"] = df["Summary"].apply(parse_summary)

# 将每个列表条目拆分为单独行,保留对应SID
expanded_df = df.explode("extracted_data", ignore_index=True)

# 把字典列展开为独立的表格列
final_df = pd.concat([
    expanded_df[["SID"]],
    expanded_df["extracted_data"].apply(pd.Series)
], axis=1)

# 保存结果到新Excel文件
final_df.to_excel("extracted_output.xlsx", index=False)

关键步骤说明

  1. 字符串转Python对象:使用ast.literal_eval()将Summary列中存储的字符串形式数组转换为可操作的Python列表/字典,这是处理这类伪JSON数据的常用方法。
  2. 嵌套字段提取:遍历每个数组元素,从tid子字典中提取category和classification,同时提取顶层的Count字段,用get()方法可以避免因字段缺失导致的报错。
  3. 行拆分:使用explode()方法将每个单元格中的列表拆分为多行,确保每个提取的条目都与原SID一一对应。
  4. 字典列展开:通过pd.Series将字典格式的列展开为独立的表格列,得到最终的结构化输出。

异常处理优化

如果你的数据中存在格式不规范或字段缺失的情况,可以在parse_summary函数中添加异常捕获,避免程序中断:

def parse_summary(summary_str):
    try:
        summary_data = ast.literal_eval(summary_str)
        result = []
        for entry in summary_data:
            result.append({
                "category": entry.get("tid", {}).get("category"),
                "classification": entry.get("tid", {}).get("classification"),
                "Count": entry.get("Count")
            })
        return result
    except (SyntaxError, ValueError):
        # 处理格式错误的情况,返回空列表或占位值
        return []

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 16:50:23