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.
Es muy probable que este punto ya se haya discutido, pero no se haya podido encontrar. Los promedios apilados por categorías son trampas para las personas que no saben cómo administrar con DAX. ¿Alguien puede ayudar en ello?
La medida debe ser un promedio dado por un DISTINCTCOUNT de la Columna1 dividido por el número de días en el rango de la tabla, que obtengo por el DISTINCTCOUNT de un campo Fecha
MyAvg = DISTINCTCOUNT(Column1_StuffToCount) / DISTINCTCOUNT(Column2_DateFromTable)
El eje Y tiene la medida, MyAvg
El eje X se realiza en Column3_ CategoryToXaxis;
las barras (MyAvg) se apilan mediante Column4_ToStackBars
Las segmentaciones de datos ofrecen a los usuarios la posibilidad de seleccionar el período de tiempo
Por supuesto, lo visual funciona bien cuando se presenta Count. El Conde está correctamente apilado. Los datos son correctos. El problema viene cuando queremos presentar el promedio por categoría, porque PBI calcula promedios independientes, por cada "celda" que está en el gráfico, mientras que necesito que el promedio se base en el total de días para la barra.
Supongamos que seleccionamos 100 días de la cortadora y asumimos que solo había un elemento en un día en la ranura "01:00" para la categoría azul oscuro, PBI calcula el promedio = 1 (1 elemento / un día, aunque el período de extracción de la cortadora es de 100 días), mientras que el promedio real para esa "celda" es 0.01. ¿Cómo podemos forzar la medida para proporcionar un promedio apilado correcto? Tableau ofrece un conjunto fácil de definir si el cálculo se calcula por "celda" o por "panel" o por tabla.
En PBI he intentado lo siguiente, pero en todos los casos el recuento de días se realiza por cada pila (por cada celda del gráfico) mientras que necesito que el recuento se realice por barra
MyAvg =
VAR SelectedDays = CALCULATE( DISTINCTCOUNT(Tbl1[MyDate]), ALL(Tbl1[Date]) )
RETURN DISTINCTCOUNT(Tbl1[StuffToCount]) / SelectedDays
MyAvg =
VAR SelectedDays = CALCULATE( DISTINCTCOUNT(Tbl1[MyDate]), ALLSELECTED(Tbl1[Date]),
RETURN DISTINCTCOUNT(Tbl1 [StuffToCount]) / SelectedDays
MyAvg =
VAR SelectedDays = CALCULATE( DISTINCTCOUNT(Tbl1[StartDate]),
FILTER(ALL(Tbl1 [StartDate]), Tbl1 [StartDate] >= MIN(Tbl1 [StartDate]) ),
FILTER(ALL(Tbl1 [StartDate]), Tbl1 [StartDate] >= MAX(Tbl1 [StartDate]) ) )
RETURN DISTINCTCOUNT(Tbl1 [StuffToCount]) / SelectedDays
gracias
Solved! Go to Solution.
Alex, gracias. Me movió por el camino correcto. Entendí el concepto. ALLSELECTED tiene que indicar el campo que no tiene que ser desglosado (según el nombre de la función). Tengo un caso en el que el recuento depende por categoría del eje X (que es el caso típico en el trazado de promedios apilados). El promedio por categoría en el eje X presentado apilado por una categoría adicional ha utilizado el conteo a basado en ALLSELECTED(archivado que apila las barras). Gracias por su ayuda
Alex, gracias. Me movió por el camino correcto. Entendí el concepto. ALLSELECTED tiene que indicar el campo que no tiene que ser desglosado (según el nombre de la función). Tengo un caso en el que el recuento depende por categoría del eje X (que es el caso típico en el trazado de promedios apilados). El promedio por categoría en el eje X presentado apilado por una categoría adicional ha utilizado el conteo a basado en ALLSELECTED(archivado que apila las barras). Gracias por su ayuda
¿Ayuda si usa solo ALLSELECTED() sin ningún argumento de tabla o columna?
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 |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |