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

如何用Power Query将Excel长格式患者手术表转为宽格式?

在Power Query中将长格式手术记录转换为宽格式表格

需求说明

现有长格式手术记录表格,同一患者的多条手术对应多行数据,需要转换为宽格式:每个患者一行,手术代码按顺序生成PROC_NUMBER_1、PROC_NUMBER_2等列。

原始长格式数据:

patient_no,FirstName,procedure_code
1,Hana,PROC_X
2,Robert,PROC_X
2,Robert,PROC_Y
3,Stepan,PROC_Z
4,Ahmed,PROC_Z

目标宽格式效果:

patient_no,FirstName,PROC_NUMBER_1, PROC_NUMBER_2, PROC_NUMBER_3, PROC_NUMBER_4
1,Hana,PROC_X,,,
2,Robert,PROC_X,PROC_Y,,
3,Stepan,PROC_Z,,,
4,Ahmed,PROC_Z,,,

Power Query操作步骤

  • 导入数据到Power Query
    打开Excel,将数据导入Power Query(数据选项卡→从表格/范围,或从CSV导入)。

  • 给每个患者的手术添加序号

    • 选中patient_no和FirstName两列,点击「转换」选项卡→「分组依据」。
    • 分组设置:操作选择「所有行」,新列名设为手术记录,点击确定。
    • 添加自定义列,公式输入:Table.AddIndexColumn([手术记录], "序号", 1, 1),命名为带序号的手术记录。
    • 点击带序号的手术记录列的展开按钮,展开procedure_code和序号两列。
  • 生成目标列名
    添加自定义列,公式输入:"PROC_NUMBER_" & Text.From([序号]),命名为目标列名。

  • 透视列完成转换

    • 选中patient_no、FirstName两列,点击「转换」选项卡→「透视列」。
    • 透视设置:值列选择procedure_code,列值选择目标列名,点击确定。
  • 调整格式(可选)

    • 按PROC_NUMBER_1、PROC_NUMBER_2的顺序调整列位置。
    • 空值保持默认即可,无需额外处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 23:25:28