Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more
Tengo un archivo csv que es la única forma en que puedo obtener los resultados de la inspección de un software. En realidad, hay 75 tareas, cada una con un resultado de "Aprobado, Arreglado, Fallido". La salida es absolutamente no legible, hay un montón de otros campos que puedo ignorar. A continuación se muestra una tabla de ejemplo simplificada de mis datos. Lo único que realmente me importa son las ubicaciones que tienen tareas que fallaron o se corrigieron. Me gustaría tratar de obtener una salida como la salida deseada a continuación, simplemente no sé cómo comenzar con esto, supongo. No quiero que ninguna de las tareas aprobadas aparezca en la salida de la lista. Ni siquiera sé cómo preguntar de manera concisa lo que estoy buscando para encontrar un video tutorial o una respuesta. ¡Cualquier ayuda es muy apreciada!
Cuadro a:
Ubicación | Nombre de la tarea 1 | Valor de la tarea 1 | Nombre de la tarea 2 | Valor de la tarea 2 | Nombre de la tarea 3 | Valor de la tarea 3 | Nombre de la tarea 4 | Valor de la tarea 4 |
Ubicación A | Ventana | Pasado | Puerta | Pasado | Paredes | Pasado | Piso | Pasado |
Ubicación B | Ventana | Fijo | Puerta | Pasado | Paredes | Pasado | Piso | Fracasado |
Ubicación C | Ventana | Pasado | Puerta | Fracasado | Paredes | Fracasado | Piso | Fijo |
Salida deseada:
Ubicación A Ubicación B Ventana - Corregido Piso - Fallido Ubicación C Puerta - Fallida Muro - Fallido Piso - Fijo |
Sus soluciones son geniales @ExcelMonke . Permítanme proporcionar pasos más detallados:
Hola, @Hewittbt
En primer lugar, puede invertir el pivote de las columnas de la Tarea 1, la Tarea 2, la Tarea 3 y la Tarea 4:
A continuación, debe crear una medida:
status =
VAR _currenttask = SELECTEDVALUE('Table'[Value])
RETURN
SWITCH(TRUE(),
_currenttask="Window",CALCULATE(MAX('Table'[Task 1 Value]),FILTER('Table','Table'[Value]=_currenttask)),
_currenttask="Door",CALCULATE(MAX('Table'[Task 2 Value]),FILTER('Table','Table'[Value]=_currenttask)),
_currenttask="Walls",CALCULATE(MAX('Table'[Task 3 Value]),FILTER('Table','Table'[Value]=_currenttask)),
_currenttask="Floor",CALCULATE(MAX('Table'[Task 4 Value]),FILTER('Table','Table'[Value]=_currenttask))
)
A continuación, como se muestra en la siguiente imagen, coloque los campos correspondientes en el objeto visual de matriz:
Los resultados son los siguientes:
He proporcionado el archivo PBIX utilizado esta vez a continuación.
Cómo obtener respuestas rápidas a tu pregunta
Si no ayuda, proporcione más detalles con la salida deseada y el archivo pbix sin información de privacidad (o algunos datos de muestra).
Saludos
Jianpeng Li
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola
Lo primero que haría es transformar sus datos en el editor de consultas. Yo anularía la dinamización de las columnas de nombre de tarea en una sola columna, igual que el valor de la tarea. El resultado debe reducirse a 3 columnas (según la tabla de datos simplificada): Ubicación; Nombre de la tarea; Valor de la tarea.
A partir de ahí, se vuelve un poco más sencillo obtener el resultado deseado. Simplemente puede colocarlo en una tabla de matriz y filtrar "Aprobado". Esto debería obtener el resultado deseado
Creo que eso es exactamente lo que quiero hacer. ¡Gracias! ¡No sabía que "despivotar columnas" existía!
¡De nada! Sí, este es un pequeño truco útil que aprendí hace un par de años y me ahorró muchos dolores de 🤠 cabeza. Si mi respuesta resolvió su problema, márquela como una solución para que otros también puedan encontrarla útil.
Check out the April 2025 Power BI update to learn about new features.
Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.