Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Tengo datos como la siguiente tabla:
ID de propietario | Descripción de la mascota | [Salida deseada] |
123 | Perro Marrón Claro | Marrón claro |
123 | Perro Tono oscuro de verde | Tono oscuro de verde |
123 | Perro Negro | Negro |
456 | Casa Gato Púrpura | Morado |
456 | Gato de la casa azul claro | Azul claro |
789 | Ratón Blanco | Blanco |
Necesito crear una nueva columna que contenga solo el color de la mascota, por ejemplo, marrón claro, tono oscuro de verde, etc.
Sin embargo, no puedo averiguar cómo extraer la información de color ya que el campo de descripción no es consistente.
Planeé hacer Extract Text después de Delimiter " ", pero debido a las inconsistencias no funcionará.
¿Hay alguna manera (en DAX, Power Query, cualquier cosa) en la que pueda recrear la siguiente lógica?
Para cada fila de ID de propietario XXX, por ejemplo, 123, ignore las palabras que se encuentran en todas las filas, por ejemplo, 'Perro' en las primeras 3 filas, y extraiga el texto después.
NOTA: En mi conjunto de datos, NO habrá valores de descripción duplicados, es decir. todo único
Solved! Go to Solution.
En power query, cree una columna personalizada y use la fórmula siguiente.
if Text.Contains([Pet Description], "Dog") then Text.Replace([Pet Description],"Dog","") else if Text.Contains([Pet Description], "House Cat") then Text.Replace([Pet Description],"House Cat","") else ""
A continuación, recorte y limpie la columna. Puede construirlo como desee con las variaciones del nombre de su mascota.
HTH
En power query, cree una columna personalizada y use la fórmula siguiente.
if Text.Contains([Pet Description], "Dog") then Text.Replace([Pet Description],"Dog","") else if Text.Contains([Pet Description], "House Cat") then Text.Replace([Pet Description],"House Cat","") else ""
A continuación, recorte y limpie la columna. Puede construirlo como desee con las variaciones del nombre de su mascota.
HTH
Hacerlo en Power Query fue el consejo que necesitaba, gracias.
Como había cientos y cientos de filas con muchas descripciones de mascotas diferentes, habría tomado demasiado tiempo escribir manualmente una declaración larga con todos los nombres, etc. (Debería haber especificado eso en la pregunta)
Lo que tenía que hacer era crear una columna que contara el número de palabras en Pet Description. Luego agrupé el ID de propietario por MIN de Recuento de palabras. Luego agregué una columna personalizada que calculaba el recuento de palabras de esa fila - MIN para ese ID de propietario. Luego utilicé este valor como una variable en una función 'Split by delimiter'. No es bonito, pero probablemente sea el mejor resultado para mí.
Debido a que su solución responde al alcance de la pregunta que publiqué y sería útil para los principiantes, la voy a marcar como solución 🙂 gracias