Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

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.

Reply
Syndicate_Admin
Administrator
Administrator

Calcular el promedio de varias columnas excluyendo cero

Screen Shot 2022-07-07 at 10.46.50 AM.png

Hola

Tengo datos de encuestas con 6 categorías: las respuestas son todas numéricas (1-5)

Estoy tratando de calcular el promedio de columnas múltiples y excluir cualquier cero en cada columna.

Fondo:

  • Los ceros eran anteriormente valores nulos que reemplacé con ceros
  • Obtuve el promedio de cada columna individual usando esta fórmula: "CALCULATE(AVERAGE('Survey Results'[Comunicación]), FILTER('Survey Results', 'Survey Results'[Communication] <> 0"

Emitir:

No puedo averiguar cómo obtener un promedio de los datos en las 6 columnas y filtrar por 0


He creado una fórmula básica para obtener el promedio:

Promedio de todos = (PROMEDIO('Resultados de la encuesta'[Comunicación])+PROMEDIO('Resultados de la encuesta'[Reuniones])+PROMEDIO('Resultados de la encuesta'[Objetivos])+PROMEDIO('Resultados de la encuesta'[Cronograma])+PROMEDIO('Resultados de la encuesta'[Gestión del cambio de alcance])+PROMEDIO('Resultados de la encuesta'[Herramientas]))/6

Y pensé que sería capaz de filtrar los ceros haciendo algo como esto.

Promedio de todo = CALCULATE(AVERAGE('Resultados de la encuesta'[Comunicación]), FILTER('Resultados de la encuesta', 'Resultados de la encuesta'[Comunicación] <> 0) + CALCULATE(AVERAGE('Resultados de la encuesta'[Reuniones]), FILTER('Resultados de la encuesta', 'Resultados de la encuesta'[Reuniones] <> 0) +... /6

Pero eso no está funcionando.

También probado

Promedio de todos = (CALCULATE(AVERAGE('Survey Results'[Comunicación]), FILTER('Survey Results', 'Survey Results'[Comunicación] <> 0)) + (CALCULATE(AVERAGE('Survey Results'[Meetings]), FILTER('Survey Results', 'Survey Results'[Meetings] <> 0)) +... /6

y el cálculo pasa, pero no es un promedio, ya que el resultado es de 7.29 en lugar de estar en el rango de 1-5. Esperaría un 4 en el medio alto. gama.

¿Algún consejo?

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Hola de nuevo @Jbro
No estoy seguro de si expliqué correctamente la solución la primera vez. Aquí hay un archivo de ejemplo con la solución propuesta https://we.tl/t-qOoLfr8KIu

1.png2.png3.png4.png

Average Value = 
AVERAGEX ( 
    FILTER ( 
        'Survey Results',
        'Survey Results'[Value] <> 0
    ),
    'Survey Results'[Value]
)

@tamerj1 ¡¡Gracias!!

Syndicate_Admin
Administrator
Administrator

@tamerj1, gracias por su respuesta. Para estar seguro de que entiendo correctamente la sugerencia es:

Unpivot las 6 columnas

Combinar las columnas en 1 columnas de valor
Calcuate el promedio usando la fórmula que tengo arriba.


¿Es cierto?

¡Gracias!

@Jbro

No sé qué imágenes tienes poco que no necesitas para duplicar las columnas. Una vez no votado, tendrá una columna de valor y una columna de atributo. Deberá crear una sola medida y podrá dividirla por la columna de atributos. Por ejemplo, puede colocar fecha en las filas de una matriz y colocar los atributos en las columnas de la matriz. Una medida será suficiente y los totales de filas y columnas le darán los promedios en ambos sentidos.

Syndicate_Admin
Administrator
Administrator

@Jbro

Prefiero despivot las 6 columnas usando power query. Entonces no será complicado en absoluto.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.