Forum Discussion

davidinternship's avatar
davidinternship
New Member
6 years ago
Solved

Average calculation in same column but for different values

Hello everyone, I'm trying to calculate the average of some different values in the same column. And after that, using that result to divide another value in the same column, resulting a value in po...
  • Anonymous's avatar
    Anonymous
    6 years ago
    // Of course, your notation is incorrect.
    // The formula should read:
    //
    // 		X = [2A / (B + C)] - 1
    //
    // In mathematics IT DOES MATTER where you put
    // brackets. Note that such a calculation should
    // be performed in Power Query, not in DAX.
    
    [New Column] = // column, not a measure
    var __code = T[ID Code]
    var __a =
    	MAXX(
    		filter(
    			T,
    			T[ID Code] = __code
    			&&
    			T[Type] = "A"
    		),
    		T[Value]
    	)
    var __b =
    	MAXX(
    		filter(
    			T,
    			T[ID Code] = __code
    			&&
    			T[Type] = "B"
    		),
    		T[Value]
    	)
    var __c =
    	MAXX(
    		filter(
    			T,
    			T[ID Code] = __code
    			&&
    			T[Type] = "C"
    		),
    		T[Value]
    	)
    return
    	DIVIDE(
    		2 * __a,
    		__b + __c
    	) - 1
    
    // If you want a calculated table,
    // you can do this:
    
    [Calc Table] =
    ADDCOLUMNS(
    	VALUES( T[ID Code] ),
    	"X",
    		var __code = T[ID Code]
    		var __a =
    			MAXX(
    				filter(
    					T,
    					T[ID Code] = __code
    					&&
    					T[Type] = "A"
    				),
    				T[Value]
    			)
    		var __b =
    			MAXX(
    				filter(
    					T,
    					T[ID Code] = __code
    					&&
    					T[Type] = "B"
    				),
    				T[Value]
    			)
    		var __c =
    			MAXX(
    				filter(
    					T,
    					T[ID Code] = __code
    					&&
    					T[Type] = "C"
    				),
    				T[Value]
    			)
    		return
    			DIVIDE(
    				2 * __a,
    				__b + __c
    			) - 1
    )

    Best

    D