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

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
Syndicate_Admin
Administrator
Administrator

Eliminar registros simétricos con Power Query

¿Hay alguna manera de eliminar los registros amarillos con Power Query?

Son errores y necesito deshacer me de ellos:

webportal_0-1619533898144.png

El proceso podría ser algo así como:

  1. Filtre la tabla para recuperar las filas que contienen solo el actual "CustomerID"
  2. Compruebe las ventas. ¿Hay algún valor con -Sales?

Y luego elimina esas filas.

Esta tabla contiene muchos otros ID de cliente: esto es solo un ejemplo.

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

No @webportal,


Según la descripción, podría usar el lenguaje M en la consulta de energía, de la siguiente manera:

v-yalanwu-msft_0-1620092625434.png

let

#"Changed Type" = Table.TransformColumnTypes(Source,{{"CustomerID", Int64.Type}, {"Sales", Int64.Type}}),
#"Added Custom1" = Table.AddColumn(#"Changed Type", "Original", each Number.ToText([CustomerID]) &" "& Number.ToText( [Sales])),
#"Added Custom" = Table.AddColumn(#"Added Custom1", "Opposite", each Number.ToText([CustomerID]) &" "& Number.ToText( [Sales]*-1)),
#"Added Custom2" = Table.AddColumn(#"Added Custom", "Flag", each if List.Contains(#"Added Custom"[Original],[Opposite]) then "" else 1),
#"Filtered Rows" = Table.SelectRows(#"Added Custom2", each [Flag] <> null and [Flag] <> ""),
#"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Original", "Opposite", "Flag"})
in
#"Removed Columns"

La salida final se muestra a continuación:

v-yalanwu-msft_1-1620092639762.pngvsv-yalanwu-msft_2-1620092662734.png


Saludos
Apoyo comunitario Team_ Yalan Wu
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.
#End Respuesta 2ª

View solution in original post

10 REPLIES 10
Syndicate_Admin
Administrator
Administrator

No @webportal,


Según la descripción, podría usar el lenguaje M en la consulta de energía, de la siguiente manera:

v-yalanwu-msft_0-1620092625434.png

let

#"Changed Type" = Table.TransformColumnTypes(Source,{{"CustomerID", Int64.Type}, {"Sales", Int64.Type}}),
#"Added Custom1" = Table.AddColumn(#"Changed Type", "Original", each Number.ToText([CustomerID]) &" "& Number.ToText( [Sales])),
#"Added Custom" = Table.AddColumn(#"Added Custom1", "Opposite", each Number.ToText([CustomerID]) &" "& Number.ToText( [Sales]*-1)),
#"Added Custom2" = Table.AddColumn(#"Added Custom", "Flag", each if List.Contains(#"Added Custom"[Original],[Opposite]) then "" else 1),
#"Filtered Rows" = Table.SelectRows(#"Added Custom2", each [Flag] <> null and [Flag] <> ""),
#"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Original", "Opposite", "Flag"})
in
#"Removed Columns"

La salida final se muestra a continuación:

v-yalanwu-msft_1-1620092639762.pngvsv-yalanwu-msft_2-1620092662734.png


Saludos
Apoyo comunitario Team_ Yalan Wu
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.
#End Respuesta 2ª

Syndicate_Admin
Administrator
Administrator

No @webportal,


Según la descripción, podría usar el lenguaje M en la consulta de energía, de la siguiente manera:
v-yalanwu-msft_2-1620092099935.png

let

#"Changed Type" = Table.TransformColumnTypes(Source,{{"CustomerID", Int64.Type}, {"Sales", Int64.Type}}),
#"Added Custom1" = Table.AddColumn(#"Changed Type", "Original", each Number.ToText([CustomerID]) &" "& Number.ToText( [Sales])),
#"Added Custom" = Table.AddColumn(#"Added Custom1", "Opposite", each Number.ToText([CustomerID]) &" "& Number.ToText( [Sales]*-1)),
#"Added Custom2" = Table.AddColumn(#"Added Custom", "Flag", each if List.Contains(#"Added Custom"[Original],[Opposite]) then "" else 1),
#"Filtered Rows" = Table.SelectRows(#"Added Custom2", each [Flag] <> null and [Flag] <> ""),
#"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Original", "Opposite", "Flag"})
in
#"Removed Columns"

La salida final se muestra a continuación:

v-yalanwu-msft_0-1620092078587.png vs v-yalanwu-msft_1-1620092083449.png


Saludos
Apoyo comunitario Team_ Yalan Wu
Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

hola

Tu pregunta no está clara. ¿Por qué no se deben eliminar también las filas que muestran 222,83 y -222,83?

@Ashish_Mathur

Hola, sí. Esas filas también deben eliminarse ya que son simmetricales.

Lo siento, pero no podré ayudar con esto.

Syndicate_Admin
Administrator
Administrator

No @webportal

Si entiendo correctamente, ¿también necesita eliminar las dos filas con 222,83 y -222,83 para este ID de cliente en el ejemplo? ¿Y las filas que quieres quitar siempre están juntas? ¿Puede proporcionar algunos datos de ejemplo en un formato que podamos copiar?

Exactamente @Vera_33

No, las filas no siempre están juntas, pueden estar lejos.

No @webportal

Pregunto ¿aparecen como pareja como 222,83 y -222,83, o 222,83 pueden estar lejos con -222,83?

No, no siempre aparecen como pareja.

A veces están lejos.

ok, @webportal has probado el camino desde @v-yalanwu-msft ?

Tengo otras 2 preguntas:

#1 siempre es lo primero en la pareja? Digamos (222,83 y -222,83), 222,83 es lo primero?

#2 ¿es posible disponer de 222,83 y -222,83 y 222,83 para el mismo cliente o 222,83 y 222,83 y -222,83?

Realmente necesita observar los datos y averiguar patrones

Helpful resources

Announcements
July 2025 community update carousel

Fabric Community Update - July 2025

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

July PBI25 Carousel

Power BI Monthly Update - July 2025

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

Top Solution Authors
Top Kudoed Authors