Anónimo
Hola amigos,
Tengo el siguiente problema y no estoy seguro de cómo debo solucionarlo. Lo que estoy tratando de hacer es básicamente separar el texto por comas de una sola columna. Intenté usar la opción Agregar columna> Extraer, pero como hay mucho texto y no sigue a un usuario, estoy luchando con él.
Tengo el siguiente texto como ejemplo:
Y a veces la Columna A el patrón no es el mismo, por ejemplo, podría ser solo Esfuerzo, otro y necesito tener todos los esfuerzos en la misma columna y todos los Otros en la misma columna.
Básicamente, estoy tratando de clasificar estos textos. Realmente agradecería su ayuda, si alguien me puede sugerir alguna idea?
Muchas gracias.
v-alq-msft
Hola, @Anónimo
Según su descripción, supongo que desea alinear el texto dividido a la derecha. Creé datos para reproducir tu escenario. El archivo pbix se adjunta al final.
Tabla:
Puede aplicar las siguientes transformaciones en el ‘Editor avanzado’.
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45W8s7LL89JTUlPTUzKSdVxzS1ILMlILclM1nFNS8tMzkzNK9FxzkksyiypBInkF5Xo+AMVFCnF6kQrkaiasBLsErEA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Column A" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column A", type text}}),
#"Split Column by Delimiter" = Table.SplitColumn(#"Changed Type", "Column A", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Column A.1", "Column A.2", "Column A.3", "Column A.4", "Column A.5", "Column A.6"}),
#"Added Custom" = Table.AddColumn(#"Split Column by Delimiter", "Custom", each List.RemoveNulls( Record.ToList(_) )),
#"Added Custom1" = Table.AddColumn(#"Added Custom", "Custom.1", each List.Count([Custom])),
Custom1 = Table.TransformColumns(#"Added Custom1",{"Custom",each let
l=List.Max(#"Added Custom1"[Custom.1]),
res=List.Combine({ List.Repeat({null},l-List.Count(_)),_})
in
res
}),
#"Removed Columns" = Table.RemoveColumns(Custom1,{"Column A.1", "Column A.2", "Column A.3", "Column A.4", "Column A.5", "Column A.6", "Custom.1"}),
Custom2 = Table.TransformColumns(#"Removed Columns",{"Custom",each Record.FromList(_,Table.ColumnNames(#"Split Column by Delimiter") )}),
#"Expanded Custom" = Table.ExpandRecordColumn(Custom2, "Custom", {"Column A.1", "Column A.2", "Column A.3", "Column A.4", "Column A.5", "Column A.6"}, {"Column A.1", "Column A.2", "Column A.3", "Column A.4", "Column A.5", "Column A.6"})
in
#"Expanded Custom"
Resultado:
Atentamente
Alano
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.
v-alq-msft
Hola, @Anónimo
Según su descripción, supongo que desea alinear el texto dividido a la derecha. Creé datos para reproducir tu escenario. El archivo pbix se adjunta al final.
Tabla:
Puede aplicar las siguientes transformaciones en el ‘Editor avanzado’.
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45W8s7LL89JTUlPTUzKSdVxzS1ILMlILclM1nFNS8tMzkzNK9FxzkksyiypBInkF5Xo+AMVFCnF6kQrkaiasBLsErEA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Column A" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column A", type text}}),
#"Split Column by Delimiter" = Table.SplitColumn(#"Changed Type", "Column A", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Column A.1", "Column A.2", "Column A.3", "Column A.4", "Column A.5", "Column A.6"}),
#"Added Custom" = Table.AddColumn(#"Split Column by Delimiter", "Custom", each List.RemoveNulls( Record.ToList(_) )),
#"Added Custom1" = Table.AddColumn(#"Added Custom", "Custom.1", each List.Count([Custom])),
Custom1 = Table.TransformColumns(#"Added Custom1",{"Custom",each let
l=List.Max(#"Added Custom1"[Custom.1]),
res=List.Combine({ List.Repeat({null},l-List.Count(_)),_})
in
res
}),
#"Removed Columns" = Table.RemoveColumns(Custom1,{"Column A.1", "Column A.2", "Column A.3", "Column A.4", "Column A.5", "Column A.6", "Custom.1"}),
Custom2 = Table.TransformColumns(#"Removed Columns",{"Custom",each Record.FromList(_,Table.ColumnNames(#"Split Column by Delimiter") )}),
#"Expanded Custom" = Table.ExpandRecordColumn(Custom2, "Custom", {"Column A.1", "Column A.2", "Column A.3", "Column A.4", "Column A.5", "Column A.6"}, {"Column A.1", "Column A.2", "Column A.3", "Column A.4", "Column A.5", "Column A.6"})
in
#"Expanded Custom"
Resultado:
Atentamente
Alano
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.
ImkeF
Hola @Anónimo,
No entiendo tu solicitud.
Consulte estos consejos para obtener respuestas a sus preguntas rápidamente:
ayuda sobre cómo obtener una respuesta rápida a sus preguntas – Comunidad de Microsoft Power BI