Letzte 10 Minuten eines pandas DataFrame abrufen

English Deutsch

In unserem vorherigen Beitrag haben wir gezeigt, wie man 5 Minuten von einem pandas DataFrame abzieht:

example.py
pd.Timestamp('now') - pd.Timedelta(10, 'minutes')

Wir können dieses Wissen auch verwenden, um die letzten 10 Minuten eines pandas DataFrame abzurufen. In unserem Beispiel gehen wir davon aus, dass df[“Timestamp”] den Zeitstempel enthält. Zuerst rufen wir den letzten Zeitstempel im Datensatz ab mit

example.py
# Verwenden Sie dies, wenn der Zeitstempel der Index des DataFrame ist
last_ts = df.index.iloc[-1]

oder

example.py
# ... oder verwenden Sie dies, wenn der Zeitstempel in einer Spalte steht
last_ts = df["Timestamp"].iloc[-1]

Als Nächstes definieren wir den ersten Zeitstempel, der berücksichtigt werden soll, indem wir 10 Minuten von last_ts abziehen:

example.py
first_ts = last_ts - pd.Timedelta(10, 'minutes')

Nun können wir den DataFrame filtern mit

example.py
# Verwenden Sie dies, wenn der Timestamp in einer Spalte steht
filtered_df = df[df["Timestamp"] >= first_ts]

oder

example.py
# Verwenden Sie dies, wenn der Timestamp der Index des DataFrame ist
filtered_df = df[df.index >= first_ts]

Durch Filtern muss der DataFrame nicht sortiert sein und die ursprüngliche Reihenfolge wird beibehalten.

Vollständiges Beispiel:

Dieses Beispiel lädt unseren vorgefertigten Zeitreihen-Beispieldatensatz aus unserem vorherigen Beitrag pandas-Zeitreihen-DataFrame-Beispieldatensatz erstellen. Der Code lädt diesen Datensatz (der 1 Sekunde lang ist) und nimmt die letzten 0,5 Sekunden daraus.

example.py
import pandas as pd

# Beispieldatensatz laden
df = pd.read_csv("https://techoverflow.net/datasets/timeseries-example.csv", parse_dates=["Timestamp"])
df.set_index("Timestamp", inplace=True)

# Verwenden Sie dies, wenn der Zeitstempel der Index des DataFrame ist
last_ts = df.index[-1]

first_ts = last_ts - pd.Timedelta(0.5, 'seconds')

filtered_df = df[df.index >= first_ts]

# Ergebnis plotten
filtered_df.plot()

Check out similar posts by category: Pandas, Python