Bagaimana untuk mengumpulkan Pandas DataFrame mengikut Dua Lajur dan Mengira Pemerhatian?

DDD
Lepaskan: 2024-10-23 10:56:12
asal
583 orang telah melayarinya

How to Group Pandas DataFrame by Two Columns and Count Observations?

Frame Data Panda: Pengumpulan Mengikut Dua Lajur dan Pengiraan Pemerhatian

Dalam analisis data, selalunya menjadi perlu untuk mengumpulkan data berdasarkan lajur dan lajur tertentu. kira bilangan pemerhatian dalam setiap kumpulan. Untuk mencapai matlamat ini menggunakan Pandas DataFrame, mari kita teliti masalah berikut.

Pernyataan Masalah:

Pertimbangkan Pandas DataFrame dengan berbilang lajur. Matlamatnya adalah untuk mengumpulkan DataFrame berdasarkan dua lajur, iaitu 'col5' dan 'col2', dan mengira bilangan baris unik dalam setiap kumpulan. Selain itu, kami ingin menentukan kiraan terbesar bagi setiap nilai 'col2'.

Penyelesaian:

Untuk mengumpulkan DataFrame dan mengira baris dalam setiap kumpulan, kami boleh gunakan fungsi Pandas groupby(). Berikut ialah pendekatan langkah demi langkah:

Langkah 1: Himpunkan DataFrame

Kumpulkan DataFrame mengikut lajur 'col5' dan 'col2':

<code class="python">grouped_df = df.groupby(['col5', 'col2'])</code>
Salin selepas log masuk

Langkah 2: Kira Baris

Gunakan fungsi size() pada DataFrame terkumpul untuk mengira bilangan baris unik dalam setiap kumpulan:

<code class="python">counts = grouped_df.size()</code>
Salin selepas log masuk

Langkah 3: Cari Kiraan Maksimum untuk Setiap 'col2'

Untuk mencari kiraan terbesar bagi setiap nilai 'col2', kita boleh mengumpulkan lagi kiraan DataFrame mengikut 'col2' dan kemudian gunakan fungsi max():

<code class="python">max_counts = counts.groupby(level=1).max()</code>
Salin selepas log masuk

Output:

Langkah di atas akan memberikan kita dua DataFrame berasingan:

  • kiraan: Menunjukkan kiraan baris unik untuk setiap kumpulan.
  • bilangan_maks: Memaparkan kiraan maksimum untuk setiap nilai 'col2'.

Atas ialah kandungan terperinci Bagaimana untuk mengumpulkan Pandas DataFrame mengikut Dua Lajur dan Mengira Pemerhatian?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!