Pandas DataFrame GroupBy Multiple Lajur untuk Pengiraan Nilai
Dalam manipulasi DataFrame dengan Pandas, mengumpulkan data mengikut berbilang lajur boleh memberikan cerapan berharga. Artikel ini menunjukkan cara mengira pemerhatian semasa mengumpulkan mengikut dua lajur, serta menentukan kiraan tertinggi untuk setiap kumpulan.
Memandangkan DataFrame dengan berbilang lajur, adalah mungkin untuk menggunakan fungsi 'groupby' pada data kumpulan berdasarkan lajur tertentu. Di sini, kami mempunyai DataFrame bernama 'df' dengan lima lajur: 'col1', 'col2', 'col3', 'col4' dan 'col5'.
<code class="python">import pandas as pd df = pd.DataFrame([ [1.1, 1.1, 1.1, 2.6, 2.5, 3.4,2.6,2.6,3.4,3.4,2.6,1.1,1.1,3.3], list('AAABBBBABCBDDD'), [1.1, 1.7, 2.5, 2.6, 3.3, 3.8,4.0,4.2,4.3,4.5,4.6,4.7,4.7,4.8], ['x/y/z','x/y','x/y/z/n','x/u','x','x/u/v','x/y/z','x','x/u/v/b','-','x/y','x/y/z','x','x/u/v/w'], ['1','3','3','2','4','2','5','3','6','3','5','1','1','1'] ]).T df.columns = ['col1','col2','col3','col4','col5']</code>
Mengira Mengikut Baris Kumpulan
Untuk mengira bilangan pemerhatian dalam setiap kumpulan baris, gunakan fungsi 'kumpulan mengikut' pada lajur yang dikehendaki dan kemudian gunakan fungsi 'saiz'.
<code class="python">result = df.groupby(['col5', 'col2']).size()</code>
Ini akan menghasilkan DataFrame dengan lajur berkumpulan sebagai indeks dan saiz sebagai nilai.
<code class="python">print(result)</code>
Menentukan Kiraan Tertinggi
Untuk menentukan kiraan maksimum bagi setiap nilai 'col2', gunakan fungsi 'groupby' pada 'col2' dan kemudian gunakan fungsi 'max' pada data terkumpul.
<code class="python">result = df.groupby(['col5', 'col2']).size().groupby(level=1).max()</code>
Ini akan menghasilkan Siri dengan kiraan maksimum untuk setiap 'col2 nilai '.
<code class="python">print(result)</code>
Ringkasnya, menggunakan fungsi 'groupby' dan 'size' dalam Pandas membolehkan analisis dan pengagregatan data yang cekap, membolehkan pengguna mengekstrak cerapan tentang data mereka dalam pelbagai cara.
Atas ialah kandungan terperinci Bagaimana untuk Melakukan Kiraan Nilai dan Cari Kiraan Maksimum untuk Berbilang Lajur Menggunakan Pandas DataFrame GroupBy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!