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

如何使用Pandas将指定格式的Object写入Excel表格?

将嵌套JSON转换为指定格式Excel的实现方法

下面提供几种不同场景下的实现方案,你可以根据自己的技术栈选择:

方案一:Python + Pandas(适合熟悉Python的用户)

  1. 先安装依赖库
pip install pandas openpyxl
  1. 编写代码处理数据并生成Excel
import pandas as pd

# 替换成你的实际数据
data = {
    "methodName_1": {
        "version_1": "10",
        "version_2": "15"
    },
    "methodName_2": {
        "version_1": "20",
        "version_2": "25"
    }
}

# 提取所有版本号作为表格列(自动去重并排序)
all_versions = sorted({v for method in data.values() for v in method.keys()})

# 整理成表格行数据
table_rows = []
for method_name, version_counts in data.items():
    row_data = {"方法名": f"{method_name}:"}
    # 为每个版本填充对应的count,没有则留空
    for version in all_versions:
        row_data[version] = version_counts.get(version, "")
    table_rows.append(row_data)

# 生成DataFrame并写入Excel
df = pd.DataFrame(table_rows)
df.to_excel("method_statistics.xlsx", index=False)

执行后会生成一个Excel文件,格式完全符合你的要求。

方案二:Node.js + XLSX库(适合前端/Node.js开发者)

  1. 先安装依赖
npm install xlsx
  1. 编写处理代码
const XLSX = require('xlsx');

// 替换成你的实际数据
const data = {
    "methodName_1": {
        "version_1": "10",
        "version_2": "15"
    },
    "methodName_2": {
        "version_1": "20",
        "version_2": "25"
    }
};

// 提取所有版本号并排序
const all_versions = [...new Set(Object.values(data).flatMap(method => Object.keys(method)))].sort();

// 构建表格结构:第一行是表头,后续是方法数据
const sheetData = [['', ...all_versions]]; // 表头第一列留空,后面是版本号

// 遍历每个方法,生成对应行
for (const [methodName, counts] of Object.entries(data)) {
    const row = [`${methodName}:`];
    all_versions.forEach(v => row.push(counts[v] || ''));
    sheetData.push(row);
}

// 生成Excel文件
const workbook = XLSX.utils.book_new();
const worksheet = XLSX.utils.aoa_to_sheet(sheetData);
XLSX.utils.book_append_sheet(workbook, worksheet, '方法统计');
XLSX.writeFile(workbook, 'method_statistics.xlsx');

方案三:Excel自带Power Query(适合不会编程的用户)

  1. 打开Excel,点击「数据」选项卡 → 「获取数据」→「从文件」→「从JSON」,选择你的JSON文件导入
  2. 在Power Query编辑器中,选中方法名所在列(如Column1),点击「转换」→「逆透视列」→「逆透视其他列」,此时会生成三列:方法名、版本号、count
  3. 点击「转换」→「透视列」,设置「值列」为count,「列名」为版本号,聚合函数选择「不要聚合」
  4. 修改第一列表头为空白,给方法名手动加上冒号,最后关闭并上载到Excel表格即可

内容的提问来源于stack exchange,提问作者Kuba Ślawski

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 08:56:06