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

如何将Google Sheets中的矩阵报告重新格式化为可导入数据库的标准数据表

宽表转长表处理方案

你需要实现的是多报告列宽格式表转换为单记录行长格式表,适配数据库导入要求,可按以下两种方案操作,支持批量处理数十份同格式表格:

方案1:电子表格工具操作(无代码)

  • 操作步骤:
    1. 打开原始表格,选中包含表头在内的全部数据区域
    2. 在顶部「数据」菜单栏中找到「逆透视列」功能:Excel可通过「从表格/范围」进入Power Query编辑器后选中所有Report列执行逆透视;WPS/Google Sheets可直接在数据工具栏找到逆透视选项
    3. 逆透视后生成的两列默认名称为「属性」「值」,分别修改为「Report」「Score」即可完成转换,空分值行后续可直接筛选删除
  • 批量处理技巧:所有表格格式一致的前提下,可提前录制操作宏,后续打开表格一键运行即可完成转换。

方案2:Python代码批量处理(多文件高效处理)

使用pandas库的melt方法可快速完成批量转换,示例代码如下:

import pandas as pd
import os

# 批量遍历所有原始表格所在文件夹
file_dir = "你的原始表格存储文件夹路径"
for file_name in os.listdir(file_dir):
    if file_name.endswith(".xlsx") or file_name.endswith(".csv"):
        # 读取原始表
        file_path = os.path.join(file_dir, file_name)
        if file_name.endswith(".xlsx"):
            df = pd.read_excel(file_path)
        else:
            df = pd.read_csv(file_path)
        # 宽表转长表
        df_long = df.melt(
            id_vars=["COMPANY"],
            var_name="Report",
            value_name="Score"
        )
        # 导出转换后的表,文件名加_转换后后缀
        new_file_name = file_name.rsplit(".",1)[0] + "_转换后." + file_name.rsplit(".",1)[1]
        df_long.to_excel(os.path.join(file_dir, new_file_name), index=False)

运行上述代码即可一次性完成文件夹内所有同格式表格的转换,无需手动逐个操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 19:39:01