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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
vidyasagar159
Helper II
Helper II

El encabezado del título de Datos de Power BI debe anexarse a filas mediante la transformación

Hola a todos,

Tengo un conjunto de datos de Excel en el siguiente formato. Pero quiero convertir lo mismo en el formato esperado a continuación también. ¿Hay alguna manera de lograr esto en la transformación de Power BI.

Cuenta personal
TeléfonosCategoría
Iphone6Sin demanda
Iphone7Demanda
Iphone8Demanda
Iphone9Sin demanda
Iphone10Demanda
Iphone11Demanda
Cuenta pública
TeléfonosCategoría
Iphone6Sin demanda
Iphone7Demanda
Iphone8Demanda
Iphone9Sin demanda
Iphone10Demanda
Iphone11Demanda

Resultado esperado
Teléfonos - Cuenta personalCategoría
Iphone6 - Cuenta personalSin demanda
Iphone7 - Cuenta personalDemanda
Iphone8 - Cuenta personalDemanda
Iphone9 - Cuenta personalSin demanda
Iphone10 - Cuenta personalDemanda
Iphone11 - Cuenta personalDemanda
Teléfonos - Cuenta PúblicaCategoría
Iphone6 - Cuenta PúblicaSin demanda
Iphone7 - Cuenta PúblicaDemanda
Iphone8 - Cuenta PúblicaDemanda
Iphone9 - Cuenta PúblicaSin demanda
Iphone10 - Cuenta PúblicaDemanda
Iphone11 - Cuenta PúblicaDemanda
1 ACCEPTED SOLUTION
jdbuchanan71
Super User
Super User

En PowerQuery puede agregar una columna personalizada que compruebe si la columna 2 está en blanco y, si es así, obtener el valor de la columna 1, a continuación, a un relleno hacia abajo.

StartEmpezarAdd custom columnAñadir columna personalizada

fill downllenar hacia abajo

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCkgtKs7PS8xRcExOzi/NK1HSUVJQitUBSmTk56UWA7nOiSWp6flFlWBRzwKQsBlQ2C9fwSU1NzEvBUncHCiOIWiBTdAShwmGBthUGxqiigaUJuVkJg8dJ8cCAA==", 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", type text}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom.1", each if Text.Length(Text.Trim([Column2])) = 0 then [Column1] else null),
    #"Filled Down" = Table.FillDown(#"Added Custom",{"Custom.1"})
in
    #"Filled Down"

Este es el código de la columna personalizada.

if Text.Length(Text.Trim([Column2])) = 0 then [Column1] else null

View solution in original post

2 REPLIES 2
jdbuchanan71
Super User
Super User

En PowerQuery puede agregar una columna personalizada que compruebe si la columna 2 está en blanco y, si es así, obtener el valor de la columna 1, a continuación, a un relleno hacia abajo.

StartEmpezarAdd custom columnAñadir columna personalizada

fill downllenar hacia abajo

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCkgtKs7PS8xRcExOzi/NK1HSUVJQitUBSmTk56UWA7nOiSWp6flFlWBRzwKQsBlQ2C9fwSU1NzEvBUncHCiOIWiBTdAShwmGBthUGxqiigaUJuVkJg8dJ8cCAA==", 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", type text}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom.1", each if Text.Length(Text.Trim([Column2])) = 0 then [Column1] else null),
    #"Filled Down" = Table.FillDown(#"Added Custom",{"Custom.1"})
in
    #"Filled Down"

Este es el código de la columna personalizada.

if Text.Length(Text.Trim([Column2])) = 0 then [Column1] else null

@jdbuchanan71

Esto es exactamente lo que estoy buscando muchas gracias por su ayuda.

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.