Comment scripter la différence entre l'horodatageBonjour à tous,
Je travaille sur un script qui vérifie les données manquantes pour les utilisateurs. Nous enregistrons les données toutes les 5 minutes. Si la différence entre 2 horodatages est supérieure à 5 minutes, nous définissons qu'il manque des données pour cette période de temps.Et le format de l'heure dans ma table de données ressemble à ceci :
2018-07-09 00:58:07.7030000
2018-07-09 00:58:07.7030000
2018-07-09 00:58:07.7030000
Est-ce que quelqu'un sait comment dois-je écrire pour sélectionner la cellule qui a plus de 5 minutes d'horodatage ?
Merci beaucoup,
Winni
Re : Comment créer un script pour la différence entre l'horodatageSalut Jim, j'ai compris les problèmes. Merci beaucoup encore une fois!
Re : Comment créer un script pour la différence entre l'horodatageCompte tenu des détails que vous avez fournis, je pense que cela pourrait être une bonne solution pour vous
dt2:ReadTime << Data Type( Numeric ) << Set Modeling Type( Continuous )
<< Format( "yyyy-mm-ddThh:mm:ss", 19 );
dt2 << New Column( "Missing Data?",
character,
formula(
If( Date Difference( Lag( :ReadTime ), :ReadTime, "Minute" ) > 5,
"Missing Data",
"No Missing Data"
)
)
);
Re : Comment créer un script pour la différence entre l'horodatageSalut Jim,
Merci beaucoup pour votre réponse. J'ai apporté des modifications en fonction de votre suggestion. Mon script est affiché ci-dessous:
dt2:ReadTime << Data Type( Numeric ) << Set Modeling Type( Continuous ) << Format( "yyyy-mm-ddThh:mm:ss", 19 );
If( Date Difference( Lag( :ReadTime ), :ReadTime, "mm" ) > 5,
dataGood = "Missing Data",
dataGood = "No Missing Data"
);
Le type et le format de données ont été modifiés avec succès, cependant, je ne sais pas comment vérifier dataGood. Dois-je créer une nouvelle colonne pour dataGood ?
Merci beaucoup!
Re : Comment créer un script pour la différence entre l'horodatageIl semble que votre colonne de date ne soit pas une valeur numérique de date/heure JMP.Il semble que ce soit une colonne de caractères.La première chose à faire est donc de la convertir en colonne Date/Heure JMP.Une fois cela fait, la façon de vérifier si la différence entre les valeurs est d'utiliser la fonction Date Difference() en conjonction avec une fonction Lag().
If(Date Difference( lag(:DateTime),:DateTime,"Minute)>5,dataGood="Missing Data",dataGood="No Missing Data");