Forum Discussion
Columnas unpivot
Hola, quiero obtener el resultado representado en la mitad inferior de la imagen de los datos que están dispuestos en el formato que se muestra en la foto de arriba.
¡Gracias por ayudarme!
@shivamkansal98 , Usar este código en una consulta en blanco en Power Query
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WioiMUtJRcnRyBpJBvsG6hjpGOsY6JkqxOtFKAYFBQFFPb18kOVOl2FgA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t, Column3 = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", type text}, {"Column3", type text}}), #"Split Column by Delimiter" = Table.SplitColumn(#"Changed Type", "Column3", Splitter.SplitTextByDelimiter("-", QuoteStyle.Csv), {"Column3.1", "Column3.2"}), #"Split Column by Delimiter1" = Table.ExpandListColumn(Table.TransformColumns(#"Split Column by Delimiter", {{"Column3.2", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Column3.2"), #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter1",{{"Column3.1", type text}, {"Column3.2", Int64.Type}}), #"Merged Columns" = Table.CombineColumns(Table.TransformColumnTypes(#"Changed Type1", {{"Column3.2", type text}}, "en-US"),{"Column3.1", "Column3.2"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Merged") in #"Merged Columns"
5 Replies
- Syndicate_Admin
Administrator
@shivamkansal98 ,Todos los pasos en power query
https://www.tutorialgateway.org/how-to-split-columns-in-power-bi/
Primero en dividir por delimitado - en columnas
A continuación, la segunda columna la divide por coma ( ,) en filas
La creación de una nueva columna con dos nuevas columnas
columna 1= [Columna1] & "-" [Columna2]
- Syndicate_Admin
Administrator
Hola
Gracias por su respuesta. En ese caso, todavía tendríaRSM-1
2
3
Mientras lo necesitoRSM-1
RSM-2
RSM-3 y así sucesivamente.
¿Puede sugerir cómo puedo hacer eso?
Además, si elijo la coma como mi delimitador, entonces no creo que se capture '1' y la tabla comenzará desde 2, ¿verdad?
- Syndicate_Admin
Administrator
@shivamkansal98 , Usar este código en una consulta en blanco en Power Query
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WioiMUtJRcnRyBpJBvsG6hjpGOsY6JkqxOtFKAYFBQFFPb18kOVOl2FgA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t, Column3 = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", type text}, {"Column3", type text}}), #"Split Column by Delimiter" = Table.SplitColumn(#"Changed Type", "Column3", Splitter.SplitTextByDelimiter("-", QuoteStyle.Csv), {"Column3.1", "Column3.2"}), #"Split Column by Delimiter1" = Table.ExpandListColumn(Table.TransformColumns(#"Split Column by Delimiter", {{"Column3.2", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Column3.2"), #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter1",{{"Column3.1", type text}, {"Column3.2", Int64.Type}}), #"Merged Columns" = Table.CombineColumns(Table.TransformColumnTypes(#"Changed Type1", {{"Column3.2", type text}}, "en-US"),{"Column3.1", "Column3.2"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Merged") in #"Merged Columns"- Syndicate_Admin
Administrator
Oye, ¿puedes explicar la fórmula?
No puedo obtener el resultado requerido.
¿Hay una manera más sencilla de hacerlo? Está bien si el nuevo método es largo.
Gracias de nuevo 🙂