Forum Discussion

JS's avatar
JS
Icon for Helper II rankHelper II
8 years ago
Solved

Data transformation help

Hello all experts.    I have the data below    1/1/2018 24 24000   I would like to transform it into    Start Date Amount 1/1/2018 1000 2/1/2018 1000 3/1/2018 1000 ...
  • donsvensen's avatar
    8 years ago

    Hi JS,

     

    You can do that like this

     

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtQ11DUyMLRQ0lEyMgETBgYGSrGxAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t, Column3 = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type date}, {"Column2", Int64.Type}, {"Column3", Int64.Type}}),
        #"Added Custom" = Table.AddColumn(#"Changed Type", "List", each List.Range({0..[Column2]},1)),
        #"Expanded List" = Table.ExpandListColumn(#"Added Custom", "List"),
        #"Added Custom1" = Table.AddColumn(#"Expanded List", "Custom", each [Column3]/[Column2]),
        #"Added Custom2" = Table.AddColumn(#"Added Custom1", "Custom.1", each Date.AddMonths([Column1], [List]-1))
    in
        #"Added Custom2"

    The Source is just the table I have create to hold the data example

     

    /Erik