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

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
Syndicate_Admin
Administrator
Administrator

Pivotar una tabla en Power Query

Hola equipo,

Tengo una tabla como la de abajo

Nikhil_567_0-1736855020114.png

Y quiero pivotar esta tabla con agregación, por lo que la tabla final que se requiere después de la transformación en Power Query es como se muestra a continuación:

ABC
123
456

¿Cómo podemos lograrlo? Recibo un error debido a valores duplicados en Column1.

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Hola @Nikhil_567

Por favor, pruebe esto:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUTJUitWJVnICsozALGcgyxjMAsmawGVN4bJmSrGxAA==", 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", type text}, {"Column2", Int64.Type}}),
    #"Added Index" = Table.AddIndexColumn(#"Changed Type", "Index", 0, 1, Int64.Type),
    IndexGrouping = Table.AddColumn(#"Added Index", "IndexGrouping", each Number.IntegerDivide([Index], 3), Int64.Type),
    #"Removed Columns" = Table.RemoveColumns(IndexGrouping,{"Index"}),
    PivotedTable = Table.Pivot( #"Removed Columns", List.Distinct(#"Removed Columns"[Column1]), "Column1","Column2" ),
    #"Removed Columns1" = Table.RemoveColumns(PivotedTable,{"IndexGrouping"})
in
    #"Removed Columns1"

danextian_0-1736863241585.png

Hola @danextian ,

Ha utilizado el número 3 al agrupar índices.

En el ejemplo dado, había 3 columnas, sin embargo, en los datos PROD reales no es fijo, puede ser 30, 80 o así sucesivamente.

¿Alguna improvisación, por favor?

Syndicate_Admin
Administrator
Administrator

Pruebe esto

Crear 2 medidas

min amount = MIN(yourdata[Column2])
max amount = MAX(yourdata[Column2])

Cree un objeto visual de matriz con

speedramps_0-1736858841541.png

Cambiar valores a filas

speedramps_1-1736858930808.png

Eliminar totales

speedramps_2-1736858959400.png

Cambiar el nombre de los valores a un solo espacio

speedramps_3-1736859024011.png

Haga clic en los botones [aceptar solución] y pulgares hacia arriba, por favor

tienen que hacerlo en Power Query

Syndicate_Admin
Administrator
Administrator

@Nikhil_567 , Intente usar esta consulta

dejar
Source = YourTable, // Reemplácelo con el nombre real de su tabla
GroupedRows = Table.Group(Source, {"Column1"}, {{"AllData", cada _, tabla de tipo [Column1=texto que acepta valores NULL, Column2=número que acepta valores NULL]}}), ),
AddedIndex = Table.TransformColumns(GroupedRows, {"AllData", each Table.AddIndexColumn(_, "Index", 1, 1, Int64.Type)}),
ExpandedTable = Table.ExpandTableColumn(AddedIndex, "AllData", {"Column1", "Column2", "Index"}),
PivotedTable = Table.Pivot(ExpandedTable, List.Distinct(ExpandedTable[Column1]), "Column1", "Column2")
en
Tabla pivotante

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!

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors