Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Price variation between dates

  Hi,   Im traing to calculate the price variation between two dates.        Is just a rest but i dont know how to do it.   Thank you
  • jbwtp's avatar
    4 years ago

    Hi Anonymous,

     

    Assuming that the data is ordered by date:

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("XdHLDcQwCATQXnyOCGDzcS1W+m9jV7CRYK9PyMzgcwbdSDcj87jGVlAez3UGV53gEjqrMqwduqoKoIVKn3UK1aobdIZaVQJaoV4VwTLD7rOSs4S9hmcNop6C8w3iHmNp8uxN3kdWD+K/ldJXcjYk7aezPAfZ3+082TvvPAi1lvZOM/bc8v2A5wM=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Date = _t, Brent = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}, {"Brent", type number}}),
        #"Added Custom" = Table.AddColumn(#"Changed Type", "Var", each 0, type number),
        ToList = Table.ToRecords(#"Added Custom"),
        Calculate = List.Accumulate(List.Skip(ToList), {List.First(ToList)}, (a,n)=> a & {Record.TransformFields(n,{"Var", (x)=> n[Brent] - List.Last(a)[Brent]})}),
        Output = Table.FromRecords(Calculate, Value.Type(#"Added Custom"))
    in
        Output

     

    Kind regards,

    John