Erreur de format de date pour 2020J'ai un ensemble de données où j'ai quelques formats différents pour les dates et je crée une nouvelle colonne pour convertir les dates en un seul format. Les dates sont au format d / m / yh: m: s. Lorsque j'exécute le script, toutes les dates de 2019 se traduisent bien, mais les dates de 2020 inversent leur jour du mois. Si je vais dans les informations de la colonne et modifie les paramètres manuellement, cela fonctionne bien. Que puis-je faire dans JSL pour conserver le format correct?
DateTime
5/1/2020 1:10
5/1/2020 1:10
5/1/2020 1:10
30-12-2019 14:01:18
30-12-2019 14:01:18
30-12-2019 14:01:18
Nouvelle colonne ("DateTime2", numérique, "Continu", format ("d / m / yh: m: s", 22,0), format d'entrée ("d / m / yh: m: s", 0)) ;
pour chaque ligne (: DateTime2 = num (: DateTime));
DateTime DateTime2
5/1/2020 1:10 01/05 / 2020 1:10:00 AM
5/1/2020 1:10 01/05 / 2020 1:10:00 AM
5/1/2020 1:10 01/05 / 2020 1:10:00 AM
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 : Erreur de format de date pour 2020Votre date d'entrée est constituée de données de caractères et vous utilisez la fonction num() pour deviner le format de la date. Utilisez la fonction informat et spécifiez le format. Certaines de vos données comportent des secondes et d'autres non. Vous pouvez utiliser l'expression régulière pour que tout reste à la hauteur des secondes. \d+ correspond à un ou plusieurs chiffres et \D correspond à des chiffres non numériques.
Informat( Regex( :datetime, "\d+\D\d+\D\d+\D\d+\D\d+" ), "d/m/y h:m" )
JMP devine m/d/a pour les dates ambiguës ; les exemples de dates que vous avez pour 2019 ne sont pas ambigus.
the datetime column is character data, column2 is a formula columnla colonne datetime contient des données de caractères, la colonne 2 est une colonne de formule
Column 2 formulaFormule de la colonne 2
Re: Erreur de format de date pour 2020Merci Craige. Vous avez raison, les dates n'étaient pas ambiguës en raison des entrées de fin d'année pour 2019. Bonne prise.
Je n'aurais pas pensé au Regex, alors appréciez également vos idées là-bas.
Re: Date format error for 2020Merci pour la formule.
J'ai eu besoin des secondes, j'ai donc mis
Informat(
Regex( :Name( "Time-court" ), "\d+\D\d+\D\d+\D\d+\D\d+\D\d+" ),
"d/m/y h:m:s:sc"
)
Re: Erreur de format de date pour 2020Génial, et vous êtes les bienvenus! Heureux que cela fonctionne pour vous.
Le regex (...) peut ne pas être nécessaire si vos données sont toutes au même format. Dans la question initiale, certaines valeurs avaient des secondes et d'autres pas. En ne conservant que les heures et les minutes, le format hh: mm fonctionnerait pour tous.
La partie importante est de spécifier le format approprié pour lire les dates.