fusionando columnas con reglas

Un usuario Pregunto ✅

jcastr02

¿Cómo puedo fusionar dos columnas en una nueva columna (columna C) donde si las columnas A y B son iguales, solo debería darme el valor de la primera columna? Si no son iguales, ¿fusionar dos columnas?

Col A Col B Nueva columna (columna C)
Coincidencia de ejemplo Ejemplo de coincidencia Ejemplo de coincidencia
Ejemplo de coincidencia Ejemplo de coincidencia Coincidencia de ejemplo
Ejemplo de coincidencia Ejemplo de coincidencia Ejemplo de coincidencia
Ejemplo de coincidencia Ejemplo de coincidencia Coincidencia de ejemplo
Coincidencia de ejemplo Coincidencia de ejemplo Ejemplo de coincidencia
Ejemplo de coincidencia Coincidencia de ejemplo Coincidencia de ejemplo
Coincidencia de ejemplo Coincidencia de ejemplo Coincidencia de ejemplo
Ejemplo de coincidencia Coincidencia de ejemplo Ejemplo de coincidencia
Coincidencia de ejemplo Ejemplo de coincidencia Ejemplo de coincidencia
Ejemplo de coincidencia Ejemplo de coincidencia Coincidencia de ejemplo
Ejemplo de coincidencia Ejemplo de coincidencia Ejemplo de coincidencia
Ejemplo de coincidencia Coincidencia de ejemplo Coincidencia de ejemplo
Ejemplo de coincidencia Coincidencia de ejemplo Ejemplo de coincidencia
Muscle Shoals Muscle Shoals
Junuea Junuea
Ciudad Nueva Florida Nueva CiudadFlorida
Ciudad Nueva Júpiter Nueva CiudadJúpiter
Ciudad Nueva Júpiter Nueva CiudadJúpiter
Fort Lauderdale Fort Lauderdale
Miami Miami

jdbuchanan71

Puede agregar esto como una nueva columna calculada:

Col C = SI ( [Col A] = [Col B], [Col A], [Col A] Y [Col B] )

edhans

@ jcastr02

Si hace esto en Power Query, puede usar esta fórmula en una columna personalizada. A continuación, puede eliminar las otras dos columnas y solo llevar la columna final a Power BI si lo desea.

if [Col A] = [Col B] then [Col A] 
else Text.Trim([Col A] & " " & [Col B])

Genera la tercera columna aquí:

edhans_0-1602528023794.png

El código M completo está aquí:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45Wcq1IzC3ISVXwTSxJzlDSQePH6oyqGKwqfEuLk4ECwRn5iTnFQBVgQa/SvNLURBjPL7VcwTmzpBLId8vJL8pMSUQX9iotyCxJLcIn7JZfVKLgk1iaklqUkpiTCjPbNzMxNxPMiQUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Col A" = _t, #"Col B" = _t]),
    #"Added New Column" = Table.AddColumn(Source, "New Column", each if [Col A] = [Col B] then [Col A] 
else Text.Trim([Col A] & " " & [Col B])),
    #"Changed Type" = Table.TransformColumnTypes(#"Added New Column",{{"New Column", type text}})
in
    #"Changed Type"

Cómo utilizar el código M proporcionado en una consulta en blanco:
1) En Power Query, seleccione New Source, luego Blank Query
2) En la cinta de Inicio, seleccione el botón «Editor avanzado»
3) Elimina todo lo que ves, luego pega el código M que te he dado en ese cuadro.
4) Presione Listo
5) Consulte este artículo si necesita ayuda para usar este código M en su modelo.

jdbuchanan71

Puede agregar esto como una nueva columna calculada:

Col C = SI ( [Col A] = [Col B], [Col A], [Col A] Y [Col B] )

jcastr02

En respuesta a jdbuchanan71

@ jdbuchanan71 ¡Gracias, funcionó!

Deja un comentario

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