Forum Discussion
Power Query, subtraction between two lists
Hello, I have columns with lists.
Column [Numbers_1_3_5] has this.
Column [Numbers_2_4_6] has this
I want to just make a new column that finds the difference between the two lists.
I tried Value.Subtract([Numbers_1_2_5],[Numbers_2_4_6]) but this doesn't work because they are in list format.
I'm used to R being able to do this but how do I do this in Power BI?
The first one should be - 11 minus 18, 22 minus 28, 35 minus 37 = -7,-6,-2
Thanks
Hi peterhui50
It's not quite as simple as in R I'm afraid, but you can use List.Zip to combine corresponding elements from a list of lists, then perform operations on the resulting list.
For your example, the code to enter in the calculated column dialog box would be something like this:
List.Transform( List.Zip( {[Numbers_1_3_5], [Numbers_2_4_6]} ), each _{1}-_{0})Regards,
Owen
3 Replies
- OwenAugerSuper User
Hi peterhui50
It's not quite as simple as in R I'm afraid, but you can use List.Zip to combine corresponding elements from a list of lists, then perform operations on the resulting list.
For your example, the code to enter in the calculated column dialog box would be something like this:
List.Transform( List.Zip( {[Numbers_1_3_5], [Numbers_2_4_6]} ), each _{1}-_{0})Regards,
Owen
- AlexisOlsonSuper User
You could also create a virtual table and add a custom column:
Table.AddColumn( Table.FromColumns({[Numbers_1_3_5], [Numbers_2_4_6]}, {"135", "246"}), "Diff", each [246] - [135] )[Diff]This returns the custom column from the virtual table.
- peterhui50Helper III
Thanks that's amazing. I was trying to create functions and such and this solves it.