Dataframe.resample () hanya berfungsi dengan data rangkaian waktu. Saya tidak dapat menemukan cara untuk mendapatkan setiap baris ke-n dari data non-deret waktu. Apa metode terbaik?
python
pandas
resampling
Mixel
sumber
sumber
df.iloc[1::5, :]
.df.iloc[::5]
Meskipun jawaban yang diterima @chrisb memang menjawab pertanyaan tersebut, saya ingin menambahkannya sebagai berikut.
Metode sederhana yang saya gunakan untuk mendapatkan
nth
data atau menghapusnth
baris adalah sebagai berikut:Pengambilan sampel berbasis aritmatika ini memiliki kemampuan untuk mengaktifkan pemilihan baris yang lebih kompleks.
Ini mengasumsikan , tentu saja, Anda memiliki
index
kolom berurutan, berurutan, bilangan bulat mulai dari 0.sumber
Ada solusi yang lebih sederhana untuk jawaban yang diterima yang melibatkan pemanggilan langsung
df.__getitem__
.Misalnya, untuk mendapatkan setiap 2 baris, Anda bisa melakukannya
Ada juga
GroupBy.first
/GroupBy.head
, Anda mengelompokkan pada indeks:Indeks lantai-divved oleh langkah (2, dalam kasus ini). Jika indeksnya non-numerik, lakukan saja
sumber
Saya memiliki persyaratan yang serupa, tetapi saya ingin item ke-n dalam grup tertentu. Beginilah cara saya menyelesaikannya.
sumber