Forum Discussion

tomshaw83's avatar
tomshaw83
Helper I
5 years ago
Solved

Index Column & Fill Down

Hello,

I am trying to fill down with a repeating index column as below. I know how to do the 2 things independently (insert an index column, and fill down) but become unstuck when I want to do them together.

 

What I haveWhat I want
1 
 1
 2
 3
 4
1 
 1
 2
 3
 4
1 
 1
 2
 3
 4

 

 

Any help would be appreciated


Thank you

  • Hi tomshaw83 ,

     

    You can group you data according hoe you want the index to filldown,

    the before expanding the columns, add a column, Table.AddIndexColumn( [ColumnName], "IndexperCategory")

     

    You can refer to the code below

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WSlSK1cFGJuEgk7GRsQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}}),
        #"Added Index" = Table.AddIndexColumn(#"Changed Type", "Index", 1, 1, Int64.Type),
        #"Grouped Rows" = Table.Group(#"Added Index", {"Column1"}, {{"Count", each _, type table [Column1=nullable text, Index=number]}}),
        #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.AddIndexColumn([Count], "IndexperCategory", 1)),
        #"Expanded Custom" = Table.ExpandTableColumn(#"Added Custom", "Custom", {"Index", "IndexperCategory"}, {"Index", "IndexperCategory"})
    in
        #"Expanded Custom"

     Hope this helps!

2 Replies

  • mussaenda's avatar
    mussaenda
    Community Champion

    Hi tomshaw83 ,

     

    You can group you data according hoe you want the index to filldown,

    the before expanding the columns, add a column, Table.AddIndexColumn( [ColumnName], "IndexperCategory")

     

    You can refer to the code below

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WSlSK1cFGJuEgk7GRsQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}}),
        #"Added Index" = Table.AddIndexColumn(#"Changed Type", "Index", 1, 1, Int64.Type),
        #"Grouped Rows" = Table.Group(#"Added Index", {"Column1"}, {{"Count", each _, type table [Column1=nullable text, Index=number]}}),
        #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.AddIndexColumn([Count], "IndexperCategory", 1)),
        #"Expanded Custom" = Table.ExpandTableColumn(#"Added Custom", "Custom", {"Index", "IndexperCategory"}, {"Index", "IndexperCategory"})
    in
        #"Expanded Custom"

     Hope this helps!