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

如何在Microsoft PowerBI中将高行维度数据转换为列维度格式?

在PowerBI中实现会议数据的宽表转换步骤

1. 进入Power Query编辑器

导入数据集后,切换到数据视图选中目标表,点击顶部菜单栏的转换数据,打开Power Query编辑器。

2. 标准化Meeting Number列

选中Meeting Number列,点击顶部的数据类型按钮,设置为整数,空值会自动转为null。

3. 逆透视非核心列

选中ID和Name两列,右键选择逆透视其他列,此时表结构会变为:

IDNameAttributeValue
1JohnMeeting Numbernull
1JohnMeeting Datenull
1JohnMeeting Decisionnull
2MikeMeeting Number1
2MikeMeeting Date01-01-2020
2MikeMeeting DecisionWaiting

4. 生成新的字段名

添加自定义列New_Attribute,使用以下公式:

if [Attribute] = "Meeting Number" then null else Text.Replace([Attribute], "Meeting ", "") & "_meeting_" & Text.From([Meeting Number])

完成后删除Meeting Number和原Attribute列,仅保留ID、Name、New_Attribute、Value四列。

5. 清理无效行

选中New_Attribute列,点击筛选器取消勾选null,删除这些冗余行。

6. 透视得到目标结构

选中New_Attribute列,点击转换选项卡的透视列,在弹窗中:

  • 值列选择Value
  • 高级选项选不要聚合
    点击确定后,即可得到包含Date_meeting_1、Decision_meeting_1等字段的宽表。

7. 保留无会议的记录

如果透视后无会议的行(如John)消失,可按以下操作找回:

  • 复制原始表,删除除ID、Name外的所有列,移除重复项
  • 回到透视后的表,点击主页→合并查询→合并查询作为新查询,选择复制的表为左表,透视表为右表,按ID和Name做左外部连接
  • 展开合并后的列,所有无会议的字段会自动显示为null

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 05:27:21