Forum Discussion

RockStarNomad's avatar
RockStarNomad
Frequent Visitor
3 years ago

Average counting each instance in a group only once

I'm trying to create a column with an average for each Name, but the formula should only factor in each unique Code instance one time. Here is the data below with expected output on the right.

For name A1, the average is 60, because we are adding 100, 50, and 30 (one instance each of code xx, yy, and zz regardless of how many times the codes appear) and dividing by the 3 unique codes, and for B1 the average is 20 for the same reason ((10 + 25 +25) / 3).

   OUTPUT
NameCodeValueAverage
A1xx10060
A1xx10060
A1xx10060
A1xx10060
A1yy5060
A1yy5060
A1yy5060
A1zz3060
B1aa1020
B1aa1020
B1bb2520
B1cc2520
B1cc2520

 

Appreciate the help!

3 Replies

  • You can create a measure like

    Distinct average =
    	AVERAGEX(
    		SUMMARIZE( 'Table', 'Table'[Code], 'Table'[Value] ),
    		'Table'[Value]
    	)
    • RockStarNomad's avatar
      RockStarNomad
      Frequent Visitor

      Unfortunately this formula does not work, that generates an average for the whole table, it does not generate an average within each Name

      • johnt75's avatar
        johnt75
        Icon for Super User rankSuper User

        It should do if you put it in a visual with the Name column