Pandas: so wählen sie zeilen zwischen zwei daten aus


Sie können die folgende Syntax verwenden, um Zeilen zwischen zwei bestimmten Daten in einem Pandas-DataFrame auszuwählen:

 df[df. date . between (' 2022-01-02 ', ' 2022-01-06 ')]

In diesem speziellen Beispiel werden alle Zeilen im DataFrame zwischen dem 01.02.2022 und dem 01.06.2022 ausgewählt.

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: Zeilen zwischen zwei Datumsangaben in Pandas auswählen

Angenommen, wir haben den folgenden Pandas-DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' date ': pd. date_range (start=' 1/1/2022 ', periods= 8 ),
                   ' sales ': [18, 20, 15, 14, 10, 9, 8, 12],
                   ' returns ': [5, 7, 7, 9, 12, 3, 2, 4]})

#view DataFrame
print (df)

        date sales returns
0 2022-01-01 18 5
1 2022-01-02 20 7
2 2022-01-03 15 7
3 2022-01-04 14 9
4 2022-01-05 10 12
5 2022-01-06 9 3
6 2022-01-07 8 2
7 2022-01-08 12 4

Wir können die folgende Syntax verwenden, um nur Zeilen zwischen dem Datum 01.02.2022 und dem 01.06.2022 auszuwählen:

 #select all rows where date is between 2022-01-02 and 2022-01-06
df[df. date . between (' 2022-01-02 ', ' 2022-01-06 ')]

              date sales returns
1 2022-01-02 20 7
2 2022-01-03 15 7
3 2022-01-04 14 9
4 2022-01-05 10 12
5 2022-01-06 9 3

Beachten Sie, dass nur Zeilen zwischen den Daten 2022-01-02 und 2022-01-06 ausgewählt werden.

Wenn Sie möchten, können Sie das Start- und Enddatum auch außerhalb der Funktion between() festlegen:

 #define start and end dates
start_date = ' 2022-01-02 '
end_date = ' 2022-01-06 '

#select all rows where date is between start and end
df[df. date . between (start_date, end_date)]


              date sales returns
1 2022-01-02 20 7
2 2022-01-03 15 7
3 2022-01-04 14 9
4 2022-01-05 10 12
5 2022-01-06 9 3

Dies führt zum gleichen Ergebnis.

Beachten Sie, dass Sie, wenn Ihre Datumsspalte kein erkennbares Datum/Uhrzeit-Format hat, möglicherweise zuerst den folgenden Code verwenden müssen, um sie in das Datum/Uhrzeit-Format zu konvertieren:

 df[' date '] = pd. to_datetime (df[' date ']) 

Sobald Sie dies getan haben, können Sie die Funktion between() verwenden, um Zeilen zwischen bestimmten Daten auszuwählen.

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 extrahieren Sie den Monat aus dem Datum in Pandas
So konvertieren Sie den Zeitstempel in Pandas in Datum/Uhrzeit

Einen Kommentar hinzufügen

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