Error de formato de fecha para 2020Tengo un conjunto de datos donde tengo un par de formatos diferentes para fechas y estoy creando una nueva columna para convertir las fechas a un formato. Las fechas están en formato d / m / aa: m: s. Cuando ejecuto el script, todas las fechas de 2019 se traducen bien, pero las fechas de 2020 tienen el día del mes invertido. Si entro en la información de la columna y cambio la configuración manualmente, funciona bien. ¿Qué puedo hacer dentro de JSL para conservar el formato correcto?
Fecha y hora
01/05/2020 1:10
01/05/2020 1:10
01/05/2020 1:10
30-12-2019 14:01:18
30-12-2019 14:01:18
30-12-2019 14:01:18
Nueva columna ("DateTime2", numérico, "Continuo", formato ("d / m / aa: m: s", 22,0), formato de entrada ("d / m / aa: m: s", 0)) ;
para cada fila (: DateTime2 = num (: DateTime));
DateTime DateTime2
01/05/2020 1:10 01/05 / 2020 1:10:00 a.m.
01/05/2020 1:10 01/05 / 2020 1:10:00 a.m.
01/05/2020 1:10 01/05 / 2020 1:10:00 a.m.
30-12-2019 14:01:18 30/12 / 2019 2:01:18 PM
30-12-2019 14:01:18 30/12 / 2019 2:01:18 PM
30-12-2019 14:01:18 30/12 / 2019 2:01:18 PM
Re: Error de formato de fecha para 2020Su fecha de entrada son datos de caracteres y está utilizando la función num() para adivinar el formato de la fecha. Utilice la función de información y especifique el formato. Algunos de sus datos tienen segundos y otros no. Puedes usar expresiones regulares para mantener todo actualizado hasta donde podrían estar los segundos. \d+ coincide con uno o más dígitos y \D coincide con números que no son dígitos.
Informat( Regex( :datetime, "\d+\D\d+\D\d+\D\d+\D\d+" ), "d/m/y h:m" )
JMP estima m/d/y para fechas ambiguas; Las fechas de ejemplo que tienes para 2019 no son ambiguas.
the datetime column is character data, column2 is a formula columnla columna de fecha y hora son datos de caracteres, la columna 2 es una columna de fórmula
Column 2 formulaFórmula de la columna 2
Re: Error de formato de fecha para 2020Gracias Craige Tiene razón, las fechas no eran ambiguas debido a las entradas de fin de año para 2019. Buena atrapada.
No hubiera pensado en el Regex, así que agradezco sus ideas allí también.
Re: error de formato de fecha para 2020Gracias por la formula.
Necesitaba los segundos así que puse
Informat(
Regex( :Name( "Time-court" ), "\d+\D\d+\D\d+\D\d+\D\d+\D\d+" ),
"d/m/y h:m:s:sc"
)
Re: error de formato de fecha para 2020¡Genial y de nada! Me alegro de que esté funcionando para usted.
Es posible que la expresión regular (...) no sea necesaria si todos sus datos tienen el mismo formato. En la pregunta original, algunos valores tenían segundos y otros no. Al mantener solo las horas y los minutos, el formato hh: mm funcionaría para todos ellos.
Lo importante es especificar el formato adecuado para leer las fechas.