在 Power BI 中交换列和行
Swap columns and rows in Power BI
我是 Power BI 的新手,想测试一下您可以使用它做什么和不能做什么。因此,我尝试交换左侧 table 的列和行,以获得第二个 table 等于右侧的列和行:
我发现您可以使用数据透视将行转换为列,但 Power BI 中的选项只允许我基于一列而不是两列进行数据透视:
我还发现了 DAX 语法,它更灵活。我试图用它来克隆 table。稍作研究后,我做了 运行 下一句:
NewTable = Var Table2 = DataTable( "Year", STRING,{ {"2020 Price"},{"2021 Price"} } )
Var CrossJoined = CROSSJOIN(Table1,Table2)
Return SELECTCOLUMNS( CrossJoined ,
"ID" , [ID] ,
"Year" , [Year] ,
"New York" , CALCULATE(SWITCH([Year] ,
"2020" , [2020 Price] ,
"2021" , [2021 Price] ,
BLANK()); Table1[City] IN {"New York"}) ,
"Chicago" , CALCULATE(SWITCH([Year] ,
"2020" , [2020 Price] ,
"2021" , [2021 Price] ,
BLANK()); Table1[City] IN {"Chicago"})
)
无论如何这都行不通。那么,如何正确交换行和列?
在 Power Query 中:
- Select 2020 年价格 和 2021 年价格 列和
Unpivot Columns
- Select City 列和
Pivot Columns
基于 Value 列(不聚合)
Remove
属性 列中的“价格”
Rename
属性列
Sort
/Reorder
根据需要
我是 Power BI 的新手,想测试一下您可以使用它做什么和不能做什么。因此,我尝试交换左侧 table 的列和行,以获得第二个 table 等于右侧的列和行:
我发现您可以使用数据透视将行转换为列,但 Power BI 中的选项只允许我基于一列而不是两列进行数据透视:
我还发现了 DAX 语法,它更灵活。我试图用它来克隆 table。稍作研究后,我做了 运行 下一句:
NewTable = Var Table2 = DataTable( "Year", STRING,{ {"2020 Price"},{"2021 Price"} } )
Var CrossJoined = CROSSJOIN(Table1,Table2)
Return SELECTCOLUMNS( CrossJoined ,
"ID" , [ID] ,
"Year" , [Year] ,
"New York" , CALCULATE(SWITCH([Year] ,
"2020" , [2020 Price] ,
"2021" , [2021 Price] ,
BLANK()); Table1[City] IN {"New York"}) ,
"Chicago" , CALCULATE(SWITCH([Year] ,
"2020" , [2020 Price] ,
"2021" , [2021 Price] ,
BLANK()); Table1[City] IN {"Chicago"})
)
无论如何这都行不通。那么,如何正确交换行和列?
在 Power Query 中:
- Select 2020 年价格 和 2021 年价格 列和
Unpivot Columns
- Select City 列和
Pivot Columns
基于 Value 列(不聚合) Remove
属性 列中的“价格”Rename
属性列Sort
/Reorder
根据需要