Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.

Reply
Syndicate_Admin
Administrator
Administrator

¿Hay alguna forma de dividir las columnas en filas, pero no crear un valor duplicado para otras columnas?

Tengo varios colunms en una tabla, e intenté crear un colunms dividido en filas, y usar esa columna como filtro para la tabla, pero este paso creará un valor duplicado para otros colunms, por lo que afectará mis proporciones como promedio, etc.

¿Hay alguna manera de evitar eso, por favor? Gracias

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

@engingee ,

Puede agrupar por para crear columnas de índice y, a continuación, crear una instrucción if para obtener el resultado.

Entrada:

vstephenmsft_4-1647506096145.png

Salida:

vstephenmsft_0-1647505993777.png

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUTLUN9I31jfRN1WK1YlWMgKKgHn6ZmC+MViFMZBvoRQbCwA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", Int64.Type}, {"Column2", type text}}),
    #"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(#"Changed Type", {{"Column2", Splitter.SplitTextByDelimiter("/", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Column2"),
    #"Grouped Rows" = Table.Group(#"Split Column by Delimiter", {"Column1"}, {{"Count", each _, type table [Column1=nullable number, Column2=nullable text]}}),
    #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.AddIndexColumn([Count],"Index",1)),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"Count"}),
    #"Expanded Custom" = Table.ExpandTableColumn(#"Removed Columns", "Custom", {"Column2", "Index"}, {"Column2", "Index"}),
    #"Added Custom1" = Table.AddColumn(#"Expanded Custom", "Custom", each if [Index]=1 then [Column1] else null),
    #"Removed Columns1" = Table.RemoveColumns(#"Added Custom1",{"Column1"}),
    #"Reordered Columns" = Table.ReorderColumns(#"Removed Columns1",{"Custom", "Column2", "Index"}),
    #"Removed Columns2" = Table.RemoveColumns(#"Reordered Columns",{"Index"})
in
    #"Removed Columns2"

Saludos

Esteban Tao

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

@engingee ,

Puede agrupar por para crear columnas de índice y, a continuación, crear una instrucción if para obtener el resultado.

Entrada:

vstephenmsft_4-1647506096145.png

Salida:

vstephenmsft_0-1647505993777.png

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUTLUN9I31jfRN1WK1YlWMgKKgHn6ZmC+MViFMZBvoRQbCwA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", Int64.Type}, {"Column2", type text}}),
    #"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(#"Changed Type", {{"Column2", Splitter.SplitTextByDelimiter("/", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Column2"),
    #"Grouped Rows" = Table.Group(#"Split Column by Delimiter", {"Column1"}, {{"Count", each _, type table [Column1=nullable number, Column2=nullable text]}}),
    #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.AddIndexColumn([Count],"Index",1)),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"Count"}),
    #"Expanded Custom" = Table.ExpandTableColumn(#"Removed Columns", "Custom", {"Column2", "Index"}, {"Column2", "Index"}),
    #"Added Custom1" = Table.AddColumn(#"Expanded Custom", "Custom", each if [Index]=1 then [Column1] else null),
    #"Removed Columns1" = Table.RemoveColumns(#"Added Custom1",{"Column1"}),
    #"Reordered Columns" = Table.ReorderColumns(#"Removed Columns1",{"Custom", "Column2", "Index"}),
    #"Removed Columns2" = Table.RemoveColumns(#"Reordered Columns",{"Index"})
in
    #"Removed Columns2"

Saludos

Esteban Tao

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hola

Por favor, publique algunos datos de muestra para poder comprender mejor

la tabla así:

engingee_0-1647280904065.png

y me gustaría un resultado como este:

engingee_1-1647280931543.pngen lugar de

engingee_2-1647280956130.png

Hola

En Power Query, puede transformar fácilmente

serpiva64_0-1647281299307.png

Para

serpiva64_1-1647281333501.png

sólo dividiendo por columna

serpiva64_2-1647281367469.png

Si esta publicación es útil para ayudarlo a resolver su problema, considere darle a la publicación un pulgar hacia arriba

y aceptarlo como solución!

¿Es posible tener un resultado como la tabla 2 en lugar de la tabla 3, por favor?

Hola, una posibilidad para lograr esto es:

dividir columna por delimitador en columnas

serpiva64_0-1647338410115.png

A continuación, seleccione la columna 1 y despivote otras columnas

Obtienes esto

serpiva64_1-1647338531470.png

Ahora agrega una columna personalizada

serpiva64_3-1647338926761.png

y luego solo necesita reordenar las columnas y cambiar el nombre.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

Feb2025 NL Carousel

Fabric Community Update - February 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors
Top Kudoed Authors