cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Riddlemirror
Frequent Visitor

Displaying Month Data side by side

Hi Team,

I have a set of certain metrics with Actual Values in one column and Target Values in second column, for every month. 
I cannot figure out how to display those 2 values for each corresponding month side by side.  For example: Target and Actual for April should be in one row. 

Screenshot 2022-03-15 104026.jpg

1 ACCEPTED SOLUTION
Thejeswar
Super User
Super User

Hi @Riddlemirror  ,

You need to perform the below steps to transform the table as per your expectation.

1. Unpivot the Actual and Target Columns

2. Filter the value column to exclude nulls

3. Pivot the Attribute column with Value column to be selected as value. You will have to change the aggregation from count to Max post this step

Source:

Thejeswar_2-1647340381693.png

 

Target:

 Thejeswar_0-1647340168481.png

Insead use the below M Query to get this

 

let
    Source,
    #"Unpivoted Columns" = Table.UnpivotOtherColumns(Source, {"Month"}, "Attribute", "Value"),
    #"Filtered Rows" = Table.SelectRows(#"Unpivoted Columns", each ([Value] <> "null")),
    #"Pivoted Column" = Table.Pivot(#"Filtered Rows", List.Distinct(#"Filtered Rows"[Attribute]), "Attribute", "Value", List.Max)
in
    #"Pivoted Column"

 

 Replace Source with your source details in the above M code

Regards,

 

 

 

View solution in original post

2 REPLIES 2
amitchandak
Super User
Super User

@Riddlemirror , if you are sure there is only one value per month, use group by and take the max of both columns

https://docs.microsoft.com/en-us/power-query/group-by



!! Microsoft Fabric !!
Microsoft Power BI Learning Resources, 2023 !!
Learn Power BI - Full Course with Dec-2022, with Window, Index, Offset, 100+ Topics !!
Did I answer your question? Mark my post as a solution! Appreciate your Kudos !! Proud to be a Super User! !!
Thejeswar
Super User
Super User

Hi @Riddlemirror  ,

You need to perform the below steps to transform the table as per your expectation.

1. Unpivot the Actual and Target Columns

2. Filter the value column to exclude nulls

3. Pivot the Attribute column with Value column to be selected as value. You will have to change the aggregation from count to Max post this step

Source:

Thejeswar_2-1647340381693.png

 

Target:

 Thejeswar_0-1647340168481.png

Insead use the below M Query to get this

 

let
    Source,
    #"Unpivoted Columns" = Table.UnpivotOtherColumns(Source, {"Month"}, "Attribute", "Value"),
    #"Filtered Rows" = Table.SelectRows(#"Unpivoted Columns", each ([Value] <> "null")),
    #"Pivoted Column" = Table.Pivot(#"Filtered Rows", List.Distinct(#"Filtered Rows"[Attribute]), "Attribute", "Value", List.Max)
in
    #"Pivoted Column"

 

 Replace Source with your source details in the above M code

Regards,

 

 

 

Helpful resources

Announcements
May 2023 update

Power BI May 2023 Update

Find out more about the May 2023 update.

Submit your Data Story

Data Stories Gallery

Share your Data Story with the Community in the Data Stories Gallery.