Forum Discussion
naveen_85
4 years agoNew Member
Substract Previous row
Hello Team, i have the below table in power BI, so i need to calculate the below formula by using the below table. much appreciated if you could help on the below. i need to substract with pr...
- 4 years ago
Hi naveen_85
You can first add an Index column which starts at 0 (this column will be used like row number in the following step). Then add a custom column with below code. "Added Index" is the previous step name. Modify it according to your transformation steps.
let previousTotal = #"Added Index"{[Index]-1}[Total Payroll], diffTotal = [Total Payroll] - previousTotal in if diffTotal > 0 then ([New Hired]-diffTotal)/[Total temporary] else [New Hired]/[Total Payroll]There is an error in the first row because it doesn't have a previous row. You can replace error value with Replace Errors feature under Transform tab > Replace Values. You can format the numbers in the custom column per your need.
Regards,
Community Support Team _ Jing
If this post helps, please Accept it as the solution to help other members find it.
lbendlin
4 years agoSuper User
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjIwMjQwU9JRMjSyAJGGECJWByplDuIbG4NIAxBhipACqzc2BesFMxFSliC+CViDCURrbCwA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Month = _t, #"Total Payroll" = _t, #"New Hired" = _t, #"Total temporary" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Total Payroll", Int64.Type}, {"New Hired", Int64.Type}, {"Total temporary", Int64.Type}}),
#"Added Index" = Table.AddIndexColumn(#"Changed Type", "Index", 0, 1, Int64.Type),
#"Added Custom" = Table.AddColumn(#"Added Index", "Custom", each if [Total Payroll]-#"Changed Type"[Total Payroll]{[Index]-1} > 0 then [New Hired]-[Total Payroll]+#"Changed Type"[Total Payroll]{[Index]-1} else [New Hired]/[Total Payroll])
in
#"Added Custom"
Note: your teminology is unusual. Usually rows have numbers and columns have letters.