Dataframe.resample () funktioniert nur mit Zeitreihendaten. Ich kann keine Möglichkeit finden, jede n-te Zeile aus Nicht-Zeitreihen-Daten abzurufen. Was ist die beste Methode?
python
pandas
resampling
Mixel
quelle
quelle
df.iloc[1::5, :]
.df.iloc[::5]
Obwohl die akzeptierte Antwort von @ chrisb die Frage beantwortet, möchte ich Folgendes hinzufügen.
Eine einfache Methode, mit der ich die
nth
Daten abrufe oder dienth
Zeile lösche, ist die folgende:Diese arithmetische Abtastung bietet die Möglichkeit, noch komplexere Zeilenauswahlen zu ermöglichen.
Dies setzt natürlich voraus , dass Sie eine
index
Spalte geordneter, aufeinanderfolgender Ganzzahlen haben, die bei 0 beginnen.quelle
Es gibt eine noch einfachere Lösung für die akzeptierte Antwort, bei der direkt aufgerufen wird
df.__getitem__
.Um beispielsweise alle 2 Zeilen zu erhalten, können Sie dies tun
Es gibt auch
GroupBy.first
/GroupBy.head
, Sie gruppieren im Index:Der Index wird durch den Schritt (in diesem Fall 2) durch den Boden geteilt. Wenn der Index nicht numerisch ist, tun Sie dies stattdessen
quelle
Ich hatte eine ähnliche Anforderung, aber ich wollte den n-ten Punkt in einer bestimmten Gruppe. So habe ich es gelöst.
quelle