So vergleichen sie daten in pandas: mit beispielen


Sie können die folgenden Methoden verwenden, um Datumsangaben zwischen zwei Spalten in einem Pandas-DataFrame zu vergleichen:

Methode 1: Fügen Sie dem DataFrame eine neue Spalte hinzu, die den Datumsvergleich anzeigt

 df[' met_due_date '] = df[' comp_date '] < df[' due_date ']

In diesem speziellen Beispiel wird eine neue Spalte namens „met_due_date“ hinzugefügt, die „True“ oder „False“ zurückgibt, je nachdem, ob das Datum in der Spalte „ comp_date “ vor dem Datum in der Spalte „ due_date “ liegt.

Methode 2: Filtern Sie den DataFrame basierend auf dem Datumsvergleich

 df_met_due_date = df[df[' comp_date '] < df[' due_date ']]

In diesem speziellen Beispiel wird der DataFrame so gefiltert, dass nur Zeilen beibehalten werden, deren Datum in der Spalte „ comp_date“ vor dem Datum in der Spalte „ due_date“ liegt.

Die folgenden Beispiele zeigen, wie jede dieser Methoden in der Praxis mit dem folgenden Pandas DataFrame verwendet wird:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' task ': ['A', 'B', 'C', 'D'],
                   ' due_date ': ['4-15-2022', '5-19-2022', '6-14-2022', '10-24-2022'],
                   ' comp_date ': ['4-14-2022', '5-23-2022', '6-24-2022', '10-7-2022']})

#convert due_date and comp_date columns to datetime format
df[[' due_date ', ' comp_date ']] = df[[' due_date ', ' comp_date ']]. apply (pd. to_datetime )

#view DataFrame
print (df)

  task due_date comp_date
0 A 2022-04-15 2022-04-14
1 B 2022-05-19 2022-05-23
2 C 2022-06-14 2022-06-24
3 D 2022-10-24 2022-10-07

Beispiel 1: Fügen Sie dem DataFrame eine neue Spalte hinzu, die den Datumsvergleich anzeigt

Der folgende Code zeigt, wie eine neue Spalte mit dem Namen „met_due_date“ hinzugefügt wird, die „True“ oder „False“ zurückgibt, je nachdem, ob das Datum in der Spalte „ comp_date “ vor dem Datum in der Spalte „ due_date “ liegt.

 import pandas as pd

#create new column that shows if completion date is before due date
df[' met_due_date '] = df[' comp_date '] < df[' due_date ']

#view updated DataFrame
print (df)

  task due_date comp_date met_due_date
0 A 2022-04-15 2022-04-14 True
1 B 2022-05-19 2022-05-23 False
2 C 2022-06-14 2022-06-24 False
3 D 2022-10-24 2022-10-07 True

Für jede Zeile im DataFrame gibt die neue Spalte „ met_due_date “ an, ob das Datum in der Spalte „ comp_date “ vor dem Datum in der Spalte „ due_date“ liegt.

Wir können beispielsweise sehen, dass Aufgabe A das Fälligkeitsdatum 15.04.2022 und das Abschlussdatum 14.04.2022 hatte.

Da das Abschlussdatum vor dem Fälligkeitsdatum lag, ist der Wert der Spalte met_due_date True.

Beispiel 2: Filtern Sie den DataFrame basierend auf dem Datumsvergleich

Der folgende Code zeigt, wie der DataFrame so gefiltert wird, dass er nur Zeilen enthält, deren Datum in der Spalte „ comp_date “ vor dem Datum in der Spalte „ due_date“ liegt.

 import pandas as pd

#filter for rows where completion date is before due date
df_met_due_date = df[df[' comp_date '] < df[' due_date ']]

#view results
print (df_met_due_date)

  task due_date comp_date
0 A 2022-04-15 2022-04-14
3 D 2022-10-24 2022-10-07

Der neue DataFrame wurde so gefiltert, dass er nur Zeilen enthält, deren Datum in der Spalte „comp_date “ vor dem Datum in der Spalte „due_date“ liegt.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in Pandas ausgeführt werden:

So erstellen Sie einen Datumsbereich in Pandas
So konvertieren Sie den Zeitstempel in Pandas in Datum/Uhrzeit
So berechnen Sie eine Differenz zwischen zwei Daten in Pandas

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert