Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Buenas tardes tengo un problema que no puedo resolver tengo una tabla que tiene diferentes tipos y categorías de producto y quiero calcular un indicador añadiendo las diferencias que existen entre ellos.
Mesa
Id | Tipo | CATEG | Costo |
1 | A | X | 1524 |
2 | A | Y | 1544 |
3 | A | Z | 1569 |
4 | B | X | 1599 |
5 | B | Y | 1634 |
6 | B | Z | 1674 |
7 | A | X | 1719 |
8 | A | Y | 1769 |
9 | A | Z | 1824 |
10 | B | X | 1884 |
Cálculo
CATEG | PROMEDIO TIPO A | PROMEDIO TIPO B | Dif |
X | 1621,5 | 1741,5 | 120 |
Y | 1656,5 | 1634 | -22,5 |
Z | 1696,5 | 1674 | -22,5 |
MEDIR SUMA TOTAL DIF 75
Quiero una medida que calcule la suma de los promedios por categoría y tipo, que luego puede ser mostrado por cualquier otra dimensión ¿Puede alguien ayudarme Gracias
Solved! Go to Solution.
Hola @emionline ,
Siento mucho mi última respuesta.
Modifiqué la fórmula anterior, podría usar la siguiente fórmula:
averageA =
CALCULATE (
AVERAGE ( 'Average table'[Cost] ),
FILTER (
ALL ( 'Average table' ),
'Average table'[Category] = MAX ( 'Average table'[Category] )
&& [Type] = "A"
)
)
averageB =
CALCULATE (
AVERAGE ( 'Average table'[Cost] ),
FILTER (
ALL ( 'Average table' ),
'Average table'[Category] = MAX ( 'Average table'[Category] )
&& [Type] = "B"
)
)
Diff =
'Average table'[averageB] - 'Average table'[averageA]
sumDiff =
VAR _diff = [averageB]- [averageA]
Var _a = SUMX(ADDCOLUMNS(VALUES('Average table'[Category]),"sumDiff",CALCULATE([Diff],ALLEXCEPT('Average table','Average table'[Category]))),[sumDiff])
return
IF(HASONEVALUE('Average table'[Category]),_diff, _a)
Mi visualización tiene este aspecto:
¿He respondido a tu pregunta? Por favor, marque mi respuesta como solución. Muchas gracias.
Si no es así, cargue algunas muestras de datos insensibles y la salida esperada.
Saludos
Eyelyn Qin
Hola @emionline ,
Siento mucho mi última respuesta.
Modifiqué la fórmula anterior, podría usar la siguiente fórmula:
averageA =
CALCULATE (
AVERAGE ( 'Average table'[Cost] ),
FILTER (
ALL ( 'Average table' ),
'Average table'[Category] = MAX ( 'Average table'[Category] )
&& [Type] = "A"
)
)
averageB =
CALCULATE (
AVERAGE ( 'Average table'[Cost] ),
FILTER (
ALL ( 'Average table' ),
'Average table'[Category] = MAX ( 'Average table'[Category] )
&& [Type] = "B"
)
)
Diff =
'Average table'[averageB] - 'Average table'[averageA]
sumDiff =
VAR _diff = [averageB]- [averageA]
Var _a = SUMX(ADDCOLUMNS(VALUES('Average table'[Category]),"sumDiff",CALCULATE([Diff],ALLEXCEPT('Average table','Average table'[Category]))),[sumDiff])
return
IF(HASONEVALUE('Average table'[Category]),_diff, _a)
Mi visualización tiene este aspecto:
¿He respondido a tu pregunta? Por favor, marque mi respuesta como solución. Muchas gracias.
Si no es así, cargue algunas muestras de datos insensibles y la salida esperada.
Saludos
Eyelyn Qin
Hola @emionline ,
Según mi entendimiento, desea calcular el promedio basado en la categoría y el tipo, y luego mostrar el valor menos, ¿verdad?
Puede usar la siguiente fórmula:
averageA =
CALCULATE (
AVERAGE ( 'Average table'[Cost] ),
FILTER (
ALL ( 'Average table' ),
[Category] = SELECTEDVALUE ( 'Average table'[Category] )
&& [Type] = "A"
)
)
averageB =
CALCULATE (
AVERAGE ( 'Average table'[Cost] ),
FILTER (
ALL ( 'Average table' ),
[Category] = SELECTEDVALUE ( 'Average table'[Category] )
&& [Type] = "B"
)
)
Diff =
[averageB] - [averageA]
Mis visualizaciones tienen este aspecto:
por favor trate de crear tres medidas
average type a = AVERAGEX(FILTER('Table','Table'[TYPE]="A"),'Table'[COST])
average type b = AVERAGEX(FILTER('Table','Table'[TYPE]="B"),'Table'[COST])
dif = [average type a]-[average type b]
Proud to be a Super User!
Muchas gracias por la respuesta, sólo queda resolver la medida que suma los promedios totales.
El resultado final debería dar -75
Esa es la medida que no puedo resolver y que necesito analizar con cualquier otra dimensión de la tabla
Muchas gracias por la respuesta, sólo queda resolver la medida que suma los promedios totales.
El resultado final debería dar 75
Esa es la medida que no puedo resolver y que necesito analizar con cualquier otra dimensión de la tabla
@emionline , Probar como
Tipo medio calculate(average(Table[COST]),allexcept(Table[TYPE]))
Promedio Categ calculado(Tabla[COST]),allexcept(Tabla[CATEG]))
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |