So schreiben Sie den Unterschied zwischen ZeitstempelHallo alle,
Ich arbeite an einem Skript, das die fehlenden Daten für Benutzer überprüft. Wir zeichnen alle 5 Minuten Daten auf. Wenn der Unterschied zwischen 2 Zeitstempeln größer als 5 Minuten ist, definieren wir, dass für diesen Zeitraum Daten fehlen.Und das Format der Zeit in meiner Datentabelle sieht so aus:
2018-07-09 00:58:07.7030000
2018-07-09 00:58:07.7030000
2018-07-09 00:58:07.7030000
Weiß jemand, wie ich skripten soll, um die Zelle auszuwählen, die mehr als 5 Minuten Zeitstempel hat?
Vielen Dank,
Winni
Betreff: Wie man den Unterschied zwischen Zeitstempeln scriptetHallo Jim, ich habe die Probleme herausgefunden. Nochmal vielen Dank!
Betreff: Wie man den Unterschied zwischen Zeitstempeln scriptetAngesichts der von Ihnen angegebenen Einzelheiten denke ich, dass dies eine gute Lösung für Sie sein könnte
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"
)
)
);
Betreff: Wie man den Unterschied zwischen Zeitstempeln scriptetHallo Jim,
Vielen Dank für Ihre Antwort. Ich habe Änderungen aufgrund Ihres Vorschlags vorgenommen. Mein Skript wird unten angezeigt:
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"
);
Der Datentyp und das Format wurden erfolgreich geändert, aber ich bin verwirrt darüber, wie ich dataGood überprüfen kann. Muss ich eine neue Spalte für dataGood erstellen?
Vielen Dank!
Betreff: Wie man den Unterschied zwischen Zeitstempeln scriptetEs scheint, dass Ihre Datumsspalte kein numerischer JMP-Datums-/Uhrzeitwert ist.Es scheint, dass es sich um eine Zeichenspalte handelt.Das erste, was Sie also tun müssen, ist, es in eine JMP-Datum/Uhrzeit-Spalte zu konvertieren.Sobald dies erledigt ist, können Sie überprüfen, ob der Unterschied zwischen den Werten besteht, indem Sie die Date Difference()-Funktion in Verbindung mit einer Lag()-Funktion verwenden.
If(Date Difference( lag(:DateTime),:DateTime,"Minute)>5,dataGood="Missing Data",dataGood="No Missing Data");