Seite 1 von 1
datetime64 vergleichen - Format unterschiedlich
Verfasst: Dienstag 15. Dezember 2020, 12:37
von naheliegend
Hi,
irgendwie bekomme ich es nicht hin zwei datetime64 zu vergleichen, weil Tage und Monate an unterschiedlichen stellen stehen und ich ich das nicht formatiert bekomme:
bzw ich habe einen Zeitstempel:
und eine pandas column mit Einträgen wie folgt:
Code: Alles auswählen
>> df['Zeit'].iloc[0]
{datetime64} 2020-10-28 20:00:01
Wie kann ich die beiden datimes ins gleiche Format bringen und dann vergleichen?
LG
Re: datetime64 vergleichen - Format unterschiedlich
Verfasst: Dienstag 15. Dezember 2020, 13:53
von narpfel
Moin,
ich kann mir nicht vorstellen, dass du ein Datetime-Objekt mit dem Wert „10.27.2020“ erstellen kannst. Zeig den Code, der das Objekt erstellt, und guck dir am besten auch mal die Schlüsselwortparameter zu `pd.read_csv` an. Da gibt es welche, um Datumsangaben zu parsen.
`2020-27-10` ist übrigens immer falsch. Es gibt keinen Standard, in dem YYYY-dd-mm geschrieben wird. Falls du das so selbst erzeugst, solltest du das ändern; falls du das von einem externen Tool bekommst, wäre das in meinen Augen einen Bugreport wert.
Re: datetime64 vergleichen - Format unterschiedlich
Verfasst: Dienstag 15. Dezember 2020, 15:27
von naheliegend
Das habe ich mir auch gedacht.
Bekomme es dadurch, dass ich auf einen pandas DF to_datetime anwende:
Code: Alles auswählen
df['Datum']
0 07.11.2020 23:30:28
1 07.11.2020 23:29:50
2 07.11.2020 23:29:02
3 07.11.2020 23:28:28
4 07.11.2020 23:27:42
...
24704 06.11.2020 23:32:04
24705 06.11.2020 23:32:04
24706 06.11.2020 23:31:57
24707 06.11.2020 23:31:45
24708 06.11.2020 23:30:45
Name: Datum, Length: 24709, dtype: object
Code: Alles auswählen
pd.to_datetime(df['Datum'])
0 2020-07-11 23:30:28
1 2020-07-11 23:29:50
2 2020-07-11 23:29:02
3 2020-07-11 23:28:28
4 2020-07-11 23:27:42
...
24704 2020-06-11 23:32:04
24705 2020-06-11 23:32:04
24706 2020-06-11 23:31:57
24707 2020-06-11 23:31:45
24708 2020-06-11 23:30:45
Name: Datum, Length: 24709, dtype: datetime64[ns]
Re: datetime64 vergleichen - Format unterschiedlich
Verfasst: Dienstag 15. Dezember 2020, 15:44
von naheliegend
Hab es. Danke für den Denkanstoß.
Code: Alles auswählen
pd.to_datetime(df['Datum'], format='%d.%m.%Y %H:%M:%S')
0 2020-11-07 23:30:28
1 2020-11-07 23:29:50
2 2020-11-07 23:29:02
3 2020-11-07 23:28:28
4 2020-11-07 23:27:42
...
24704 2020-11-06 23:32:04
24705 2020-11-06 23:32:04
24706 2020-11-06 23:31:57
24707 2020-11-06 23:31:45
24708 2020-11-06 23:30:45
Name: Datum, Length: 24709, dtype: datetime64[ns]