Python - Aktuelle Uhrzeit im numpy datetime64-Format abrufen

8

Wie erhalte ich das aktuelle Datum und die aktuelle Uhrzeit mit numpy datetime64?

Und wie bekomme ich den Unterschied in Sekunden?

und gegeben ein numy Array, in dem jedes Element ein Datetime64-Wert ist     
Bob 19.10.2013, 01:18
quelle

4 Antworten

5

Sie könnten das Datetime-Modul verwenden, um das aktuelle Datum abzurufen und es an datetime64

zu übergeben %Vor%

Nun, da Sie die aktuelle Datetime haben, würde ich vorschlagen, über die numpy datetime64-Dokumentation und den Beispielen folgen. Die Beispiele auf timedelta64 sollten besonders hilfreich sein.

Betrachten Sie für ein konkretes Beispiel Folgendes:

%Vor%

Dieser Code führt dazu, dass das diffSec-Array den Unterschied in Sekunden von der aktuellen Zeit bis zu den Abtastzeiten enthält

%Vor%

Erklärung:

  1. current wird zuerst mit dem datetime Modul auf die aktuelle Zeit gesetzt.
  2. Es wird ein Beispiel-Array erstellt, das np.datetime64 Elemente
  3. enthält
  4. Die Elemente np.timedelta64 werden berechnet, indem jedes Element in der Stichprobe von der aktuellen Zeit subtrahiert wird.
  5. für jedes Timedelta in Diff wird die zweite Differenz extrahiert und in einem neuen Array diffSec
  6. gespeichert

Offensichtlich sind diese genauen Ergebnisse nicht reproduzierbar, da ich die aktuelle Zeit verwende, um den Unterschied zu berechnen.

    
RMcG 19.10.2013 02:39
quelle
1

Sie können dies auch tun, um das aktuelle Datum und die aktuelle Uhrzeit zu erhalten:

%Vor%     
puzzler10 17.06.2017 07:51
quelle
0

Wenn Z am Ende für die angegebene Zeit bereitgestellt wird, ist die Uhrzeit im Zulu-Format. Dies wird in den Python-Numpy-Bibliotheken veraltet. (Ausgabe auf Github: Ссылка ).

%Vor%

Für das aktuelle Datum können Sie Folgendes verwenden:

%Vor%

Wenn Sie versuchen, die Zeit entsprechend Ihrer Zeitzone zu ändern, zum Beispiel:

%Vor%

ODER

%Vor%

Dann würden Sie ein DeprecationWarning erhalten. Wenn Sie gerade eine Version verwenden, für die sie bereits veraltet ist, können Sie den folgenden Code verwenden:

%Vor%     
Prateek Shankar 22.12.2016 07:24
quelle
-1

Angenommen, Sie möchten den Unterschied zwischen dem Array t1 und dem Skalar t0 berechnen (sie könnten beides Arrays oder Skalare sein):

%Vor%

Die beste Methode zur Berechnung von Zeitunterschieden in numpy ist die Verwendung von timedelta64. Im obigen Beispiel ist t0 in Minuten und t1 in Sekunden. Bei der Berechnung der Zeitdifferenz, sie werden beide in die kleinere Einheit (Sekunden) umgewandelt. Sie müssen sie nur subtrahieren um ein timedelta64-Objekt zu erstellen:

%Vor%

Wenn Sie die Antwort in einem numerischen Format wünschen, tun Sie

%Vor%

Bitte beachten Sie, dass ich nie die for -Struktur verwendet habe, um die Arrays zu scannen. Es würde die Effizienz beeinträchtigen, indem es die Vektorisierung verhindert.

    
bmello 28.12.2014 09:11
quelle

Tags und Links