Pandas: so wählen sie dataframe-zeilen nach zeitstempel aus


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

 df[(df[' tstamp '] > ' 2022-10-25 04:30:00 ') & (df[' tstamp '] < ' 2022-10-27 11:00:00 ')]

Bei dieser Syntax wird davon ausgegangen, dass tstamp bereits über einen datetime-Typ verfügt.

Wenn nicht, können Sie die folgende Syntax verwenden, um sie in eine Datums-/Uhrzeitspalte zu konvertieren:

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

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

Beispiel: Pandas DataFrame-Zeilen nach Zeitstempel auswählen

Angenommen, wir haben den folgenden Pandas-DataFrame, der Informationen über Verkäufe in einem Einzelhandelsgeschäft enthält:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' tstamp ': ['2022-10-25 04:00:00', '2022-10-25 11:55:12',
                                 '2022-10-26 02:00:00', '2022-10-27 10:30:00',
                                 '2022-10-27 14:25:00', '2022-10-28 01:15:27'],
                   ' sales ': [18, 22, 19, 14, 14, 11]})

#view DataFrame
print (df)

                tstamp sales
0 2022-10-25 04:00:00 18
1 2022-10-25 11:55:12 22
2 2022-10-26 02:00:00 19
3 2022-10-27 10:30:00 14
4 2022-10-27 14:25:00 14
5 2022-10-28 01:15:27 11

Nehmen wir an, wir möchten nur die Zeilen zwischen den folgenden beiden Zeitstempeln auswählen:

  • 25.10.2022 04:30:00
  • 27.10.2022 11:00:00

Wir können dazu die folgende Syntax verwenden:

 #convert timestamp column to datetime dtype
df[' tstamp '] = pd. to_datetime (df[' tstamp '])

#select rows between two timestamps
df[(df[' tstamp '] > ' 2022-10-25 04:30:00 ') & (df[' tstamp '] < ' 2022-10-27 11:00:00 ')]

	tstamp sales
1 2022-10-25 11:55:12 22
2 2022-10-26 02:00:00 19
3 2022-10-27 10:30:00 14

Beachten Sie, dass nur die Zeilen zwischen den beiden von uns angegebenen Zeitstempeln ausgewählt werden.

Beachten Sie außerdem, dass Sie Zeilen nach Zeitstempel auswählen können, indem Sie nur einen Datumswert verwenden.

Beispielsweise könnten wir den folgenden Code verwenden, um alle Zeilen mit einem Zeitstempel größer als 27.10.2022 auszuwählen:

 #convert timestamp column to datetime dtype
df[' tstamp '] = pd. to_datetime (df[' tstamp '])

#select rows with timestamp after 2022-10-27
df[df[' tstamp '] > ' 2022-10-27 ']

	tstamp sales
3 2022-10-27 10:30:00 14
4 2022-10-27 14:25:00 14
5 2022-10-28 01:15:27 11

Beachten Sie, dass nur Zeilen ausgewählt werden, deren Wert in der tsamp- Spalte nach dem 27.10.2022 liegt.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in Pandas ausführen:

So konvertieren Sie DateTime in Pandas in ein Datum
So konvertieren Sie Spalten in Pandas in DateTime
So sortieren Sie einen Pandas DataFrame nach Datum

Einen Kommentar hinzufügen

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