如何在Power Query中按三列一组执行逆透视操作?
使用Power Query实现指定数据转换
操作步骤
导入数据到Power Query
选中Excel中的源数据区域,点击「数据」选项卡→「从表格/区域」,确认勾选「我的表格有标题」,进入Power Query编辑器。添加自定义列,打包属性组
点击「添加列」→「自定义列」,输入以下M语言公式(注:目标表中存在重复列名CustomName3,这里调整为CustomName2和CustomName3以避免Excel列名冲突):{ [CustomName1=[Att1], CustomName2=[Att3], CustomName3=[Att5]], [CustomName1=[Att2], CustomName2=[Att4], CustomName3=[Att6]] }点击「确定」后,每行数据会生成包含两组属性记录的列表。
展开列表到新行
选中刚创建的「自定义」列,点击列标题右侧的展开图标→选择「到新行」,此时每条原始数据会拆分为两行,对应两组属性。展开记录为单独列
展开后「自定义」列变为记录类型,再次点击展开图标,勾选CustomName1、CustomName2、CustomName3,将记录展开为独立列。清理多余列
选中Att1到Att6的所有原始属性列,右键选择「删除」。加载转换后的数据
点击「主页」→「关闭并上载」,将转换后的数据加载回Excel工作表。
最终效果
转换后的表结构如下(修正了重复列名问题):
| Col1 | Col2 | CustomName1 | CustomName2 | CustomName3 |
|---|---|---|---|---|
| AAA | DDD | X | alpha | 100 |
| AAA | DDD | O | delta | 400 |
| BBB | EEE | Y | beta | 200 |
| BBB | EEE | P | vega | 500 |
内容的提问来源于stack exchange,提问作者SuavestArt
相关产品推荐
相关产品推荐

