Actualizar columna con valores cuando otras columnas contienen un valor específicoHola,
Tengo dos columnas llamadas 'País de envío' y 'Estado de envío'. Algunas de las filas en País de correo, especialmente para EE. UU., no contienen ningún valor.Me gustaría actualizar la columna del país de envío con el valor 'EE. UU.' cuando el estado de envío contiene valores correspondientes a varios códigos de estado en los EE. UU. Tengo cerca de 250 000 filas, por lo que no es posible actualizar manualmente. Soy nuevo en JMP y secuencias de comandos y no puedo encontrar una manera de resolver este problema.
He adjuntado una captura de pantalla de mis datos de muestra. Cualquier ayuda sería apreciada. Gracias de antemano.

Re: Actualizar columna con valores cuando otra columna contiene un valor específicoEste código debe ejecutarse como un script independiente, no como una fórmula.Re: Actualizar columna con valores cuando otra columna contiene un valor específicoHola,
Esta puede ser una pregunta tonta, pero cuando usa este código, ¿lo usa editando la fórmula de la columna? Lo hice como una fórmula como esta ya que no lo estoy haciendo en función de un valor faltante. Estoy tratando de actualizar mi columna Proveedor para que cuando la etiqueta de la columna sea igual a "MnDOT Est". el vendedor es igual a "MnDOT". Pero me da un error de fórmula de proveedor de columna interrumpida con una cosa de referencia ilegal. Cambia los que están en MnDOT pero simplemente elimina todos los demás. Espero que tenga sentido.
For Each Row(
temp = :Vendor;
:Vendor = If( :Label == "MnDOT Est.", "MnDOT", temp);
);Re: Actualizar columna con valores cuando otra columna contiene un valor específico- No convierta el valor de la fecha en carácter.
- En columnas numéricas (que es una columna de fecha) el "." indica que falta el valor.
- Tienes que hacer algo de lectura.Los libros "Uso de JMP" y "Guía de secuencias de comandos" son de lectura obligada.Puede encontrarlos en el menú desplegable Ayuda
Ayuda==>Libros==>Uso de JMP
Ayuda==>Libros==>Guía de secuencias de comandos
Re: Actualizar columna con valores cuando otra columna contiene un valor específicoGracias txnelson.
En una nota relacionada, si falta una entrada de fecha, ¿sería mejor convertir la columna en carácter y luego ejecutar el script y también hacer el "." punto que aparece en las columnas faltantes interpretadas como faltantes en Ismissing() o debería estar en blanco?
Re: Actualizar columna con valores cuando otra columna contiene un valor específicoEntonces, si falta el valor en la columna A, ¿quiere que el valor en la columna A2 se asigne a la columna A?¿Y lo mismo para otras 5 columnas?
Si eso es lo que está preguntando, así es como lo haría para la columna A, y lo repetiría para las otras 5 columnas
For Each Row(
If( IsMissing(:A), :A = :A2);
If( IsMissing(:B), :B = :B2);
);Re: Actualizar columna con valores cuando otra columna contiene un valor específicoTengo un problema similar. Tengo identificaciones y fechas que deberían ser identificables pero en diferentes columnas debido a la falta de valores.
¿Cómo puedo aplicar esto para reemplazar solo filas con valores faltantes para 6 columnas con valores de diferentes conjuntos de 6 columnas?
Re: Actualizar columna con valores cuando otra columna contiene un valor específicoDe mucha ayuda.! ¡También funcionó para mi caso de uso! Muchas gracias.!
@txnelson escribió:
Aquí hay una solución que se toma un poco de libertad con el guión de Mark.
For Each Row(
temp=:Mailing Country;
:Mailing Country = If( Is Missing( :Mailing Country ) & Contains( {"AL","AZ"}, :Mailing State ), "USA" ,temp);
);
Re: Actualizar columna con valores cuando otra columna contiene un valor específicogracias jim Funcionó perfectamente.
Gracias Marcos por tu guión.
Re: Actualizar columna con valores cuando otra columna contiene un valor específicoAquí hay una solución que se toma un poco de libertad con el guión de Mark.
For Each Row(
temp=:Mailing Country;
:Mailing Country = If( Is Missing( :Mailing Country ) & Contains( {"AL","AZ"}, :Mailing State ), "USA" ,temp);
);Re: Actualizar columna con valores cuando otra columna contiene un valor específicoHola, Mark,
Gracias por tu solución.
Sin embargo, noté que cuando ejecuto su secuencia de comandos, las filas sin el valor se actualizan con "EE. UU.", mientras que las filas con el valor presente antes desaparecen después de ejecutar la secuencia de comandos.
Adjunto una captura de pantalla de antes y después de ejecutar el script. Gracias.
Before scriptBefore scriptAntes del guión
After scriptAfter script Después del guión
Re: Actualizar columna con valores cuando otra columna contiene un valor específicoPodría usar una fórmula en una nueva columna como esta:
If( Is Missing( :Mailing Country ) & Contains( {"AL","AZ"}, :Mailing State ), "USA" )
Si no desea una nueva columna, puede ejecutar este script para reemplazar los valores que faltan en la columna existente:
For Each Row(
:Mailing Country = If( Is Missing( :Mailing Country ) & Contains( {"AL","AZ"}, :Mailing State ), "USA" );
);
Tendría que expandir la lista en cualquier caso para incluir el código de dos letras para cada estado antes de usar.