Forum Discussion

cjklatt's avatar
cjklatt
Frequent Visitor
2 years ago
Solved

Power Query Aligning rows in a table to first non 0 value in each row

Hello,

I am working with some project and financial data and wanting to align each row to 1st month that spend occurred.

Basically wanting to align the data so it is collapsed to when the spend started for each project so I can run and average monthly spend rate.

 

 

I looked around in the archives and have not been able to find anything decribing how to go about this, appreciate any insight.

thanks!

  • Hello, cjklatt 

    let
        Source = your_table,
        rows = List.Buffer(Table.ToRows(Source)),
        fx_txf = (lst as list) as list =>
            [count = List.Count(lst),
            no_zero = List.RemoveItems(lst, {0}),
            p = no_zero & List.Repeat({0}, count - List.Count(no_zero))][p],
        z = Table.FromRows(List.Transform(rows, fx_txf))
    in
        z

    and rename columns to your liking.  

1 Reply

  • Hello, cjklatt 

    let
        Source = your_table,
        rows = List.Buffer(Table.ToRows(Source)),
        fx_txf = (lst as list) as list =>
            [count = List.Count(lst),
            no_zero = List.RemoveItems(lst, {0}),
            p = no_zero & List.Repeat({0}, count - List.Count(no_zero))][p],
        z = Table.FromRows(List.Transform(rows, fx_txf))
    in
        z

    and rename columns to your liking.