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

如何将矩阵式Excel表格转换为含分类列的展开式表格?

矩阵表格转两列分类表的方法及操作名称

操作的标准名称

这个转换操作的标准名称是逆透视(Unpivot),也常被称为宽表转长表(Wide to Long Format Conversion)——核心是将宽格式表格中多列的列名转换为长格式表格中的行数据,同时保留关联的ID信息。

简便实现方法

用Excel(Power Query)

  • 选中你的数据区域,切换到「数据」选项卡,点击「从表格/区域」(确保数据有表头)
  • 在Power Query编辑器中,选中id列,右键选择「逆透视其他列」
  • 将自动生成的「属性」列重命名为category,删除多余的「值」列,最后点击「关闭并上载」即可得到目标表格

用Python Pandas库

import pandas as pd

# 构造原数据(实际使用时可直接读取文件)
df = pd.DataFrame({
    'id': [1, 2, 3, 4],
    'foo': ['x', None, None, 'x'],
    'bar': [None, 'x', None, 'x'],
    'baz': [None, None, 'x', 'x']
})

# 执行逆透视,过滤空值并清理列
result_df = df.melt(
    id_vars='id',
    var_name='category',
    value_name='temp'
).dropna(subset=['temp']).drop('temp', axis=1)

# 输出结果
print(result_df)

运行后会直接输出你需要的两列表格,其中ID为4的行会自动拆分成3条对应的分类记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 08:01:02