Dataframe.resample () działa tylko z danymi Timeeries. Nie mogę znaleźć sposobu na pobranie każdego n-tego wiersza z danych spoza serii. Jaka jest najlepsza metoda?
python
pandas
resampling
Mixel
źródło
źródło
df.iloc[1::5, :]
.df.iloc[::5]
Chociaż zaakceptowana odpowiedź @ chrisb odpowiada na pytanie, chciałbym dodać do niej co następuje.
Prosta metoda, której używam, aby pobrać
nth
dane lub upuścićnth
wiersz, jest następująca:To próbkowanie oparte na arytmetyce umożliwia jeszcze bardziej złożone selekcje wierszy.
To zakłada , oczywiście, że masz
index
kolumnę zamawianych, kolejnych liczb całkowitych, zaczynając od 0.źródło
Istnieje jeszcze prostsze rozwiązanie przyjętej odpowiedzi, które obejmuje bezpośrednie wywołanie
df.__getitem__
.Na przykład, aby uzyskać co 2 wiersze, możesz to zrobić
W indeksie znajduje się również
GroupBy.first
/GroupBy.head
, grupujesz:Indeks jest podzielony na podłogę przez krok (w tym przypadku 2). Jeśli indeks nie jest numeryczny, zrób to
źródło
Miałem podobne wymaganie, ale chciałem mieć n-ty przedmiot w określonej grupie. Tak to rozwiązałem.
źródło