Ciao,
Il problema è molto semplice e sono in grado di risolverlo, ma in qualche modo sembra che ci sia un bug nell'output. Quindi chiedendosi se c'è un errore nella mia formula?
Ho una tabella JMP con l'ora Col nel formato (mm / gg / aaaa h: m: s AM / PM)
dt << Nuova colonna ("DATE_FLAG", carattere, nominale,
Formula (If (
Abbrev Date (: Name ("TIME_COL @ ABC")) <=
Data abbreviata (22Jul2020),
"prima",
"dopo"
)));
Ora finalmente nella mia tabella aggiornata ottengo la colonna DATE_FLAG e i valori prima / dopo. Ma alcuni dei valori / righe) che dovrebbero essere prima di dire che le date sono prima del 2 luglio 2020 sono ancora etichettati come dopo? Il resto delle righe viene etichettato come previsto.
Allora cosa c'è che non va? Devo specificare il formato della data e dell'ora? In caso affermativo come posso?
Penso di aver capito il problema, ma ho bisogno di aiuto con questo:
Il confronto della data abbrev sta confrontando le due stringhe della data del carattere ed è per questo che quando 07/04/2020 10:12:34 AM viene convertito in 07/4/2020 rispetto a 07/22/2020 sta dando dopo anziché prima.
Come posso risolvere questo problema?
Grazie
Non è necessario eseguire alcuna conversione in qualcos'altro per confrontare i valori di data.
Usa semplicemente una costante di data nel confronto specificando la data nel formato ggMonYYYY:
dt << New Column( "DATE_FLAG",
Character,
Nominal,
Formula( If( :Name( "TIME_COL@ABC" ) <= 22Jul2020, "before", "after" ) )
);
Ulteriori informazioni sui valori di data:
Utilizzo di date, orari, data e ora e durate in JMP
Wow! Grazie. Questo è più semplice !!!