2022-02-07

How to calculate weighted average in Pivot Table in Excel

Title

Problem

We would like to calculate the weighted average in a pivot table in Excel.

In our example, using the mtcars data set, we want to calculate the mpg average weighted by dips.

Solution

Let's see two alternatives:

  • Option1: Adding a column.
    1. We add a new columng multiplying the variable (mpg) by the weights (disp)
    2. We create a Calculated Field dividing the new column (mpg*disp) by the weights (disp)
    3. We create a pivot table adding the Calculated Field.

  • Option 2: Using a DAX functions.
    1. We add the table to the Data Model.
    2. We create a new Measure.
    3. weighted_average:=SUMX( Table1,[mpg] * [disp]) / SUM([disp])
      
    4. We create a pivot table from Data Model as a data source adding the previous Measure.

    Related posts

    References

    2022-02-04

    Cómo calcular la media ponderada en tablas dinámicas en Excel

    Title

    Problema

    Queremos calcular la media ponderada dentro de una tabla dinámica en Excel.

    En nuestro ejemplo, usando el conjunto de datos mtcars , queremos calcular la media de mpg ponderada por disp.

    Solución

    Vamos a ver dos alternativas:

  • Opción 1: Mediante una columna auxiliar.
    1. Añadimos una columna auxiliar multiplicando la variable (mpg) por los pesos (disp)
    2. Creamos un campo calculado dividiendo la columna auxiliar (mpg*disp) por los pesos (disp)
    3. Creamos la tabla dinámica agrupando por el campo deseado

  • Opción 2: Con una fórmula DAX.
    1. Agregamos la tabla original al modelo de datos. No es necesario crear una columna auxiliar.
    2. Creamos una nueva medida
    3. weighted_average:=SUMX( Table1,[mpg] * [disp]) / SUM([disp])
      
    4. Creamos la tabla dinámica tomando como origen Desde Modelo de datos, usando la medida recién creada

    Entradas relacionadas

    Referencias

    Nube de datos