Llenar una nueva columna usando una fórmula condicionalEstoy intentando completar una nueva columna (: Prog_) con "A" o "B" según el valor de (: Asignar mes).: Asignar mes es una variable numérica, continua, m / d / a.
El siguiente script da como resultado que la columna: Prog_ se complete pero no con los valores con los que estoy tratando de completar la columna: Prog_.
Me gustaría llenar las filas de la columna: Prog_ con una "A" si: Asignar mes <= "15/06/2016"
Me gustaría rellenar las filas de la columna: Prog_ con una "B" si: Asignar mes es> 15/06/2016 "
Aquí está el script que he intentado usar (sin éxito) hasta ahora:
CT << Nueva columna ("Prog_", carácter);
Para cada fila (Prog_ = if (Char (Formato (: Asignar mes, "m / d / y")) <= "15/06/2016", "A", "B"));
CT << Nueva columna ("Prog_", carácter);
Para cada fila (Prog_ = if (: Asignar mes <= 15/06/2016, "A", "B"));
ScriptingRe: poblar una nueva columna usando una fórmula condicionalHola,
En primer lugar, asegúrese de que la columna Asignar mes tenga el formato de fecha numérico continuo; Supongo que el uso de comillas en su fórmula indica que no es el caso actualmente.
En segundo lugar, no es necesario que le diga a JMP que mire cada fila, lo hace de forma predeterminada.
En tercer lugar, la fórmula en la columna: Prog_ debería ser simplemente:
Si (: Columna 1 <= Fecha MDY (16, 05, 2016),
"UN",
"SEGUNDO"
)
Es de destacar que si esto es parte de un script JSL, la función debe incluirse en la declaración New Column (consulte la ayuda de Scripting para conocer la sintaxis exacta.
Mejor,
TSRe: poblar una nueva columna usando una fórmula condicionalAsí es como suelo manejar este tipo de problemas.La función Informat () convierte una cadena en una representación numérica de la fecha, que luego se puede comparar fácilmente con los valores de JMP DateTime.
CT = Current Data Table();
CT << New Column( "Prog_", Character );
For Each Row( Prog_ = If( :Assign Month <= Informat( "06/15/2016", "mdy" ), "A", "B" ) );
Y para agregar a @Thierry_S podría evitar el Para cada fila () si crea una columna de fórmula
CT = Current Data Table();
CT << New Column( "Prog_",
Character,
formula(
If( :Assign Month <= Informat( "06/15/2016", "mdy" ),
"A",
"B"
)
)
);
Re: poblar una nueva columna usando una fórmula condicionalSu variable original es numérica y representa un valor de fecha y hora de JMP. No es necesario convertirlo en una cadena de caracteres formateada. Puede especificar el umbral de tiempo directamente como una constante.
CT << New Column( "Prog_", Character );
For Each Row( :Prog_ = If( :Assign Month <= 15Jun2016, "A", "B" ) );