Forum Discussion
Modelado de datos de Power BI
No @selimovd
Puedo entender que esto se puede hacer a través de Pivot / UnPivot sin embargo no soy capaz de avhieve esto.
¿Puede ayudarme paso a paso sobre cómo realizar por encima de la transformación !!!
Gracias
ese
- Syndicate_Admin5 years ago
Administrator
Hey @amsrivas ,
necesita 2 elementos, una función para la transformación y la propia consulta.
Agregue la siguiente consulta en Power Query con el nombre "TransformTable":
(x) as table => let #"Save Header Name" = {x{0}[ColA]}, #"Add New Column" = Table.AddColumn(x, "Source", each #"Save Header Name"{0} ), #"Removed Top Rows" = Table.Skip(#"Add New Column",1), #"Reordered Columns" = Table.ReorderColumns(#"Removed Top Rows",{"Source", "ColA", "ColB", "ColC"}) in #"Reordered Columns"Y luego la consulta en sí:
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WckksSVTSQaFidaKVfHQNgVwjIDaG8kFsUyA2A/Odc/JLU4A8VBqi0hjItwBiSyjfBMg2BBlnaAQWcawqLUoFclFpiFqQDYZgDaZQETMQxxxEWCjFxgIA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [ColA = _t, ColB = _t, ColC = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"ColA", type text}, {"ColB", type text}, {"ColC", type text}}), #"Split Tables" = Table.Split( #"Changed Type", 3 ), #"Transform Table" = List.Transform(#"Split Tables", TransformTable), #"Load Table" = Table.Combine( #"Transform Table" ) in #"Load Table"Si necesitas ayuda, por favor avísame.Si respondiera a su pregunta, estaría feliz si pudiera marcar mi publicación como una solución ✔️ y darle un pulgar hacia arriba 👍SaludosDenisBlog: WhatTheFact.bi- Syndicate_Admin5 years ago
Administrator
No @selimovd,
La solución parece prometedora y funciona con los datos proporcionados.
Sin embargo, los datos que he proporcionado son ficticios y en los datos reales no es necesario que siempre tengamos dos filas entre cada cabeza, por e.. g datos podrían ser cualquier cosa como a continuación
ColA ColB ColC
Datos de datos
L-1 2 3
L-2 5 6
L-3 22 3322
L-4 231 233
Cloud Cloud Cloud
L-3 8 9
L-4 11 12
L-6 78 121
Azure Azure Azure
L-5 14 15
L-6 17 18- No es necesario que solo tengamos tres cabezas como Datos, Nube, Azure, etc., podría ser cualquier número.
- Número de columnas no se fijan tampoco se fijan, podría ser ColA, ColB, ColC, ColD, etc., de nuevo podría ser cualquier número.
- El número de filas entre dos cabezas puede ser cualquiera, no necesariamente dos, en el conjunto de datos anterior, hay 4 filas para datos, 3 filas para la nube, etc.
Por favor, sugiera!!
Gracias
ese
- Syndicate_Admin5 years ago
Administrator
Hey @amsrivas ,
entonces usted tiene que encontrar una manera de dividirlos y hacer la separación en porciones.
Si tiene un número ilimitado de columnas, debe cambiarlo a una forma que no se corrige en columnas específicas.
Si necesitas ayuda, por favor avísame.Si respondiera a su pregunta, estaría feliz si pudiera marcar mi publicación como una solución ✔️ y darle un pulgar hacia arriba 👍SaludosDenisBlog: WhatTheFact.bi