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.
Hola a todos
He buscado y leído algunos mensajes sobre tablas pivotantes y unpivot; sin embargo, mis datos son un poco differnet y muy feo, necesito un poco de ayuda en esto:
Tabla que tengo:
Id | MesAño | Equipo/Puntuación/Minutos | Valor 1 | Valor 2 | Valor 3 |
a | 202002 | Equipo | Equipo X | Equipo Y | |
a | 202002 | Puntuación | 5 | 5.7 | |
a | 202002 | Minutos | 60 | 65 | |
b | 202001 | Equipo | Equipo Z1 | Equipo Z2 | Equipo Z3 |
b | 202001 | Puntuación | 8 | 6 | 6.2 |
b | 202001 | Minutos | 60 | 55 | 60 |
b | 202001 | Equipo | Equipo Z4 | Equipo Z5 | Equipo Z6 |
b | 202001 | Puntuación | 8.1 | 4.8 | 7 |
b | 202001 | Minutos | 55 | 70 | 80 |
Me gustaría pasar de aquí:
Id | MesAño | Equipo | Puntuación | Minutos |
a | 202002 | Equipo X | 5 | 60 |
a | 202002 | Equipo Y | 5.7 | 65 |
b | 202001 | Equipo Z1 | 8 | 60 |
b | 202001 | Equipo Z2 | 6 | 55 |
b | 202001 | Equipo Z3 | 6.2 | 60 |
b | 202001 | Equipo Z4 | 8.1 | 55 |
b | 202001 | Equipo Z5 | 4.8 | 70 |
b | 202001 | Equipo Z6 | 7 | 80 |
Intenté crear una nueva tabla en DAX con union, pero no tuve éxito (https://community.powerbi.com/t5/Desktop/unpivot-table-with-milestones/m-p/951385#M455873). Parece que mi caso es más dinámico (cuz Team/Score/Minutes) y no sé cómo resolverlo.
Cualquier consejo sería apreciado!
Hola @trevorhh9 ,
por favor pegue este código en el editor advaned de una nueva consulta:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WSlTSUTIyMDIwMAIyQlITc6GUQgSMEQlkKMXqoCkNTs4vSgXSpiCsZ45VjW9mXmlJajGQZWYAIkxhqpJgqgzRLI0yhLOM4CxjTD0w2y1AxoKwnhGmIjTrTU0hLPwOMIGzTOEsMzwO0APxTPRADjHH5wSw7eYgd1gAnRALAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [ID = _t, MonthYear = _t, #"Team/Score/Minutes" = _t, #"Value 1 " = _t, #"Value 2" = _t, #"Value 3" = _t]),
#"Added Index" = Table.AddIndexColumn(Source, "Index", 0, 1),
#"Integer-Divided Column" = Table.TransformColumns(#"Added Index", {{"Index", each Number.IntegerDivide(_, 3), Int64.Type}}),
#"Grouped Rows" = Table.Group(#"Integer-Divided Column", {"ID", "MonthYear", "Index"}, {{"Partition", each Table.PromoteHeaders(Table.Transpose(Table.RemoveColumns(_, {"ID", "MonthYear", "Index"})))}}),
#"Removed Columns" = Table.RemoveColumns(#"Grouped Rows",{"Index"}),
#"Expanded Partition" = Table.ExpandTableColumn(#"Removed Columns", "Partition", {"Team", "Score", "Minutes"}, {"Team", "Score", "Minutes"}),
#"Filtered Rows" = Table.SelectRows(#"Expanded Partition", each ([Team] <> ""))
in
#"Filtered Rows"
Se ajusta automáticamente a más columnas de valor.
Imke Feldmann (The BIccountant)
If you liked my solution, please give it a thumbs up. And if I did answer your question, please mark this post as a solution. Thanks!
How to integrate M-code into your solution -- How to get your questions answered quickly -- How to provide sample data -- Check out more PBI- learning resources here -- Performance Tipps for M-queries
Hola @ImkeF ,
Gracias por la respuesta.
Traté de usar la consulta que proporcionó en power bi con los datos reales. Cuando hice el último paso para "#Expanded Partición", dio el valor nulo para todas las filas. Parece que no usé la columna [Equipo/Puntuaciones/Munites] y tal vez PBI no sabía qué valor devolver.
¿O estoy haciendo algo mal?
Hola @trevorhh9
Sí, es posible que tenga que reemplazar los nombres de columna en el código.
También puede eliminar los últimos pasos y hacer la expansión manualmente para que pueda ver lo que realmente hay allí.
Imke Feldmann (The BIccountant)
If you liked my solution, please give it a thumbs up. And if I did answer your question, please mark this post as a solution. Thanks!
How to integrate M-code into your solution -- How to get your questions answered quickly -- How to provide sample data -- Check out more PBI- learning resources here -- Performance Tipps for M-queries
Hola @ImkeF ,
Encontré el problema de que la columna "Equipo/Puntuaciones/Munites" en mis datos leídos no está en la tercera columna, por lo que cuando expando la tabla, se mostró nula como el orden es incorrecto.
Gracias por la brillante respuesta!
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 |