Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Rename column name as previous column first value

Hi there!

 

Is there a way to accomplish the following:

 

I'll always have one row in this form. I want the 3rd column to be renamed as the value of previous column and then deleting the second column automatically so that output table should look like below:

 

 

I have number of files for which I need to apply this. Can anyone help me with this ?

  • Anonymous's avatar
    Anonymous
    4 years ago

    Hi Anonymous ,

     

    You can copy below code and paste it in Advanced Editor.

     

    ...   
    ... ,
     #"Renamed Columns" = 
        let _Name = List.Max(#"Merged Queries"[Table.Name]) in
        Table.RenameColumns(#"Merged Queries",{{"Table.Table", _Name}}),
        #"Removed Columns" = Table.RemoveColumns(#"Renamed Columns",{"Table.Name"})
        
    in
        #"Removed Columns"

     

    Pay attention to #"Merged Queries" in my code, this the step above "Renamed Columns" step, so you need to change it in your code. The logic of this code is to get max value in "Table.Name" column. Due to you only have one row so the max value is the name we need. Then use it to rename "Table.Table" column. Finally remove "Table.Name" column.

     

    Best Regards,
    Rico Zhou

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

     

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Anonymous ,

     

    You can copy below code and paste it in Advanced Editor.

     

    ...   
    ... ,
     #"Renamed Columns" = 
        let _Name = List.Max(#"Merged Queries"[Table.Name]) in
        Table.RenameColumns(#"Merged Queries",{{"Table.Table", _Name}}),
        #"Removed Columns" = Table.RemoveColumns(#"Renamed Columns",{"Table.Name"})
        
    in
        #"Removed Columns"

     

    Pay attention to #"Merged Queries" in my code, this the step above "Renamed Columns" step, so you need to change it in your code. The logic of this code is to get max value in "Table.Name" column. Due to you only have one row so the max value is the name we need. Then use it to rename "Table.Table" column. Finally remove "Table.Name" column.

     

    Best Regards,
    Rico Zhou

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thank you so much for your response Anonymous