Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

Average a Measure

Hi,

 

DepartmentNameDays365
financeJimmy51%
ITJohn21%
ITGreg31%
LegalNick51%
LegalTom10%

 

I had a pbi file like above. Here are the descriptions for each column.

 

Department: It is conditional column based on each employee's business unit number.

Employee: Straight from the excel file

Days: Used a measure Distinctivecount to count the days based on a period of transactional data.

Days/365: Days/365

 

Now I would like to know the average time spent on employees based on business unit, the result is like below.

 

DepartmentAverage Days365
finance51%
IT2.51%
Legal31%

 

Just wonder how to get this "average days", what measure I should use?

 

Thank you!

 

 

  • Anonymous's avatar
    Anonymous
    6 years ago

    Sorry I am a bit confused with the"Table" in the measure - could you please explain what it means?

     

    Average Days = CALCULATE(AVERAGEX(Table,[Days]), ALLEXCEPT(Table, Table[Department]) )

     

  • az38's avatar
    az38
    6 years ago

    Anonymous 

    it is the data source name which contains measure {Data] and field column [Department]

     

    do not hesitate to give a kudo to useful posts and mark solutions as solution

  • Anonymous 

     

    Assuming the following:

    - The column "Department" is in a table named Data Table (substitute for your table name obviously)

    - Days is a measure: in my case I've called it [Days Measure]

     

    Use this measure to calculate the average days:

    Average Days by Department = AVERAGEX('Data Table'; [Days Measure])

    And this measure to calculate % over year:

    % Average Days / 365 = DIVIDE([Average Days by Department]; 365)

    Now set up a table/matrix using the Department column to get you this:

     Hope this helps!

     

4 Replies

  • az38's avatar
    az38
    Community Champion

    Hi Anonymous 

    ifyour dat field is a measure, it looks like you should use AVERAGEX() function https://docs.microsoft.com/en-us/dax/averagex-function-dax 

    like

    Average Days = CALCULATE(AVERAGEX(Table,[Days]), ALLEXCEPT(Table, Table[Department]) )

    do not hesitate to give a kudo to useful posts and mark solutions as solution

    • Anonymous's avatar
      Anonymous
      Not applicable

      Sorry I am a bit confused with the"Table" in the measure - could you please explain what it means?

       

      Average Days = CALCULATE(AVERAGEX(Table,[Days]), ALLEXCEPT(Table, Table[Department]) )

       

      • az38's avatar
        az38
        Community Champion

        Anonymous 

        it is the data source name which contains measure {Data] and field column [Department]

         

        do not hesitate to give a kudo to useful posts and mark solutions as solution

  • PaulDBrown's avatar
    PaulDBrown
    Community Champion

    Anonymous 

     

    Assuming the following:

    - The column "Department" is in a table named Data Table (substitute for your table name obviously)

    - Days is a measure: in my case I've called it [Days Measure]

     

    Use this measure to calculate the average days:

    Average Days by Department = AVERAGEX('Data Table'; [Days Measure])

    And this measure to calculate % over year:

    % Average Days / 365 = DIVIDE([Average Days by Department]; 365)

    Now set up a table/matrix using the Department column to get you this:

     Hope this helps!