如何在Power BI中将非日期列转为新行并保留重复日期
在Power BI中实现表格列转行(日期列保留,其余列转为行)
你需要的是逆透视列操作,以下两种方法都可以实现需求,优先推荐Power Query(更灵活易维护):
方法一:Power Query 可视化操作(推荐)
这是最简便且可扩展的方法,步骤如下:
- 打开Power Query编辑器:选中原始表格,点击顶部菜单栏的转换 → 转换数据
- 选中「日期」列:点击「日期」列的标题(确保仅选中该列)
- 逆透视剩余列:点击转换选项卡下的「逆透视列」→ 选择「逆透视其他列」
- 重命名列:右键默认生成的「属性」列,重命名为「物品」;右键「值」列,重命名为「价格」
- 保存并应用:点击编辑器左上角的关闭并应用,即可得到目标表格
方法二:DAX 公式生成表格
如果必须用DAX实现,假设你的原始表名为原始数据,可以用UNION结合SELECTCOLUMNS拼接各物品的行数据:
转换后表 = UNION( SELECTCOLUMNS( '原始数据', "日期", '原始数据'[日期], "物品", "苹果", "价格", '原始数据'[苹果] ), SELECTCOLUMNS( '原始数据', "日期", '原始数据'[日期], "物品", "香蕉", "价格", '原始数据'[香蕉] ), SELECTCOLUMNS( '原始数据', "日期", '原始数据'[日期], "物品", "黄瓜", "价格", '原始数据'[黄瓜] ) )
注意:DAX方法的局限性是如果后续新增物品列,需要手动修改公式添加对应的
SELECTCOLUMNS块,不如Power Query方法灵活。
内容的提问来源于stack exchange,提问作者Alex Jones
相关产品推荐
相关产品推荐

