Cómo eliminar registros duplicados

Un usuario Pregunto ✅

preethi

Me conecté a Cassandra DB y obtuve los datos usando la llamada API, capaz de crear la tabla. Sin embargo, quería saber cómo eliminar los registros duplicados.

Fecha y hora MessageID GatewayID Nombre SensorType Valor Está violado
2017-02-08T17: 06: 01 + 01: 00 45345 243234234 Datos1 Luz 0 FALSO
2017-02-08T17: 06: 01 + 01: 00 45345 243234234 Datos1 Humedad 45 FALSO
2017-02-08T17: 06: 01 + 01: 00 45345 243234234 Datos1 Temperatura 24 FALSO
2017-02-08T17: 06: 01 + 01: 00 45345 243234234 Datos1 Batería 2556 FALSO
2017-02-08T17: 06: 01 + 01: 00 45345 243234234 Datos1 Choque 1000 FALSO
2017-02-08T17: 06: 01 + 01: 00 45345 243234234 Datos1 Inclinación 180 CIERTO

Esperado:

Fecha y hora MessageID GatewayID Nombre Luz Está violado Humedad Está violado Temperatura Está violado Batería Está violado Choque Está violado Inclinación Está violado
2017-02-08T17: 06: 01 + 01: 00 ca6acf53-c68d-4714-930d-03ee5e9f4e21 17007D8063 SensorBreach 0 FALSO 45 FALSO 24 FALSO 2256 FALSO 1000 FALSO 180 FALSO

Hola @preethi,

Basado en el artículo publicado por @ImkeF, trato de reproducir su escenario usando las columnas Unpivot y la función Merge en Edit Query catelog.

Esta es mi declaración de Power Query.

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("rZG9CsIwEIDfJast3OWnLd0UFYdONk6lQ9DQBi1KuA6+vZc+ggQCX4aPj+NuGIQErEuQJTQW6xaqFnAH2AKIQmijtGFKraTS/Ph/dOSQ2YVpJmbyzvuuP4mx+L92WZfwCPTdtCxF65ePj47W6DcjS/TgiHxMU0pjqizJfn7fn0wEyLNKG17pLtgk0V5vXBt/", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [DateTime = _t, MessageID = _t, GatewayID = _t, Name = _t, SensorType = _t, Value = _t, IsBreached = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"DateTime", type datetimezone}, {"MessageID", Int64.Type}, {"GatewayID", Int64.Type}, {"Name", type text}, {"SensorType", type text}, {"Value", Int64.Type}, {"IsBreached", type logical}}),
    #"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"DateTime", "MessageID", "GatewayID", "Name", "SensorType", "Value"}, "Attribute", "Value.1"),
    #"Merged Columns" = Table.CombineColumns(#"Unpivoted Columns",{"SensorType", "Attribute"},Combiner.CombineTextByDelimiter("", QuoteStyle.None),"Merged"),
    #"Reordered Columns" = Table.ReorderColumns(#"Merged Columns",{"DateTime", "MessageID", "GatewayID", "Name", "Merged", "Value.1", "Value"})
in
    #"Reordered Columns"

Y obtén el siguiente resultado.

Capture1.PNG

No podemos transferir la parte de la columna a las filas en Power BI Desktop. Todas las columnas se transferirán cuando haga clic en «Transponer». Gracias por entender.

Atentamente,
Angelia

En el Editor de consultas, seleccione las columnas que desea eliminar duplicados y esto debería funcionar para usted.

eliminar dupliates.png

preethi

En respuesta a Phil_Seamark

Los datos están disponibles como par de valores de nombre en las columnas, verifique los datos nuevamente para mayor claridad.

ImkeF

En respuesta a preethi

Para lograr lo que ha mostrado, no tiene que eliminar los duplicados, sino pivotar sus datos en un par de columnas. He descrito la técnica aquí:

http://www.thebiccountant.com/2015/08/12/how-to-pivot-multiple-measurescolumns-in-power-query/

Por favor, avíseme si necesita ayuda para implementar esto.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *