tgjones43
Esta es probablemente una consulta bastante simple, pero no puedo averiguar cómo hacerlo.
¿Cómo puedo reemplazar todos los valores que son no nulo en varias columnas con la palabra Sí.
¡Gracias!
adetogni
En respuesta a tgjones43
Perdón.
Entonces probablemente agregaría una columna condicional
SI [column] = nulo luego NULL
DEMÁS [column]
Esta columna calculada tendrá sus valores limpios. Entonces puedes ocultar el original.
Hasta donde yo sé, la función «Reemplazar valor» no tiene lo que necesita.
Exceloholic
@ tgjones43 prueba esto:
= Table.ReplaceValue(Source, each [Column], each if [Column] = null then null else "Yes", Replacer.ReplaceValue, {"Column"})
Fragmentar cada uno [Column] en el segundo parámetro está tomando el contenido actual del campo en cada fila.
Anónimo
Hola @ tgjones43,
en Power Query puede agregar columnas condicionales:
Saludos
Chiara
tgjones43
En respuesta a Anónimo
Gracias @adetogni y @Anonymous. Pensé que no era posible hacer esto usando la función reemplazar todo. Preferiría no tener que crear nuevas columnas ya que tengo muchas de ellas. Creo que puede haber una forma de evitar tener que reemplazar valores si utilizo una consulta diferente en un paso anterior, así que intentaré solucionarlo.
Gracias por tu ayuda.
vissvess
En respuesta a tgjones43
@ tgjones43 Hola …
Me encontré con el mismo escenario … encontré una manera de hacer eso …
1. Seleccione todas las columnas que desee transformar a la vez.
2. Cambie el tipo de datos a un tipo irrelevante. digamos, si la columna solo tiene texto, cámbielo a un número entero para que todos los valores no nulos sean como «errores».
3. Ahora, cambie el tipo de datos a texto original / número entero. (en su caso, para reemplazarlo con ‘sí’, cámbielo a texto)
4. Transformar> Reemplazar error> ‘Sí’.
Eso es todo … Está hecho .. Espero que haya funcionado. Actualiza cómo funcionó …
bdub1976
En respuesta a vissvess
Gracias @vissvess, tienes una gran solución. En mi caso, tenía los resultados de la encuesta con varias columnas para una pregunta.
Necesitaba que los nulos fueran 0 y que cualquier cosa con texto fuera 1. Siguiendo su consejo, convertí la columna de texto a un número entero, reemplacé los nulos con 0 y luego reemplacé los errores con 1. ¡Viola!
adetogni
En respuesta a tgjones43
Dado que M no tiene un «reemplazar si es diferente de»
https://docs.microsoft.com/en-us/powerquery-m/replacer-replacevalue
No creo que tengas opciones.
A menos que, por supuesto, lo haga antes de importar datos
jschuchter
En respuesta a adetogni
En Excel, puede usar el comodín «*» para identificar celdas no nulas y reemplazarlas. Pero esto no funciona en BI
adetogni
En el editor de consultas, seleccione su columna. Luego, en la pestaña Transformar en la parte superior, elija Reemplazar valores y seleccione «nulo» con «sí».
Repita para cada columna
tgjones43
En respuesta a adetogni
Gracias, pero quiero dejar los valores «nulos» como «nulos». Son todos los demás valores los que quiero reemplazar con «Sí». Hay miles de valores diferentes, todos los cuales deben ser «Sí».
adetogni
En respuesta a tgjones43
Perdón.
Entonces probablemente agregaría una columna condicional
SI [column] = nulo luego NULL
DEMÁS [column]
Esta columna calculada tendrá sus valores limpios. Entonces puedes ocultar el original.
Hasta donde yo sé, la función «Reemplazar valor» no tiene lo que necesita.