Rumah > masalah biasa > Cara menggunakan fungsi groupby

Cara menggunakan fungsi groupby

百草
Lepaskan: 2023-09-12 10:47:29
asal
2640 orang telah melayarinya

Penggunaan fungsi groupby ialah "DataFrame.groupby(oleh=Tiada, paksi=0, tahap=Tiada, as_index=Benar, sort=Benar, group_keys=Benar, squeeze=False, observed=False, dropna=True) ". Fungsi kumpulan mengikut ialah fungsi pemprosesan data biasa yang digunakan untuk mengumpulkan data.

Cara menggunakan fungsi groupby

Fungsi kumpulan mengikut ialah fungsi pemprosesan data biasa yang digunakan untuk mengumpulkan data. Ia boleh membahagikan data kepada berbilang kumpulan mengikut syarat yang ditetapkan, dan melaksanakan pengagregatan, statistik atau operasi lain pada elemen dalam setiap kumpulan. Fungsi groupby boleh digunakan pada pelbagai struktur data, seperti senarai, kamus, bingkai data, dsb.

Penggunaan fungsi kumpulan mengikut boleh berbeza-beza bergantung pada bahasa pengaturcaraan tertentu dan perpustakaan pemprosesan data. Berikut menggunakan perpustakaan panda dalam Python sebagai contoh untuk memperkenalkan penggunaan fungsi groupby.

Dalam perpustakaan panda, fungsi groupby ialah kaedah objek DataFrame, digunakan untuk mengumpulkan data. Ia boleh mengumpulkan data mengikut lajur tertentu atau berbilang lajur dan melaksanakan pengagregatan, statistik atau operasi lain pada setiap kumpulan. Sintaks asas fungsi

groupby adalah seperti berikut:

DataFrame.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, observed=False, dropna=True)
Salin selepas log masuk

Antaranya, perihalan parameter adalah seperti berikut:

- `by`: menentukan nama lajur atau senarai nama lajur untuk pengumpulan. Boleh menjadi rentetan, senarai atau kamus. Jika ia adalah rentetan, ia bermakna mengumpulkan dengan satu lajur jika ia adalah senarai, ia bermakna mengumpulkan dengan berbilang lajur jika ia adalah kamus, ia bermakna mengumpulkan dengan pasangan nilai kunci kamus.

- `axis`: Menentukan paksi kumpulan. Lalai ialah 0, yang bermaksud pengumpulan mengikut baris;

- `level`: Tentukan tahap pengelompokan. Untuk data diindeks berbilang peringkat, anda boleh menentukan tahap untuk pengumpulan.

- `as_index`: Menentukan sama ada hendak menggunakan lajur terkumpul sebagai indeks. Lalai ialah Benar, yang bermaksud lajur terkumpul akan digunakan sebagai indeks jika salah, lajur terkumpul tidak akan digunakan sebagai indeks.

- `sort`: Tentukan sama ada hendak mengisih hasil terkumpul. Lalai ialah Benar, yang bermaksud hasil kumpulan akan diisih jika salah, hasil kumpulan tidak akan diisih.

- `kumpulan_kunci`: Menentukan sama ada untuk memasukkan kunci kumpulan dalam keputusan. Lalai ialah Benar, yang bermaksud kunci kumpulan disertakan dalam keputusan jika salah, kunci kumpulan tidak disertakan dalam keputusan.

- `picit`: Tentukan sama ada hendak memampatkan satu set data. Lalai ialah Palsu, yang bermaksud bahawa satu kumpulan data tidak akan dimampatkan jika ia Benar, satu kumpulan data akan dimampatkan.

- `diperhatikan`: Menentukan sama ada untuk memerhati semua kunci kumpulan. Lalai ialah Palsu, yang bermaksud tidak memerhatikan semua kunci kumpulan jika Benar, semua kunci kumpulan diperhatikan.

- `dropna`: Tentukan sama ada hendak memadam nilai yang tiada. Lalai adalah Benar, yang bermaksud nilai yang hilang akan dipadamkan; jika salah, nilai yang hilang tidak akan dipadamkan.

Berikut ialah contoh mudah yang menunjukkan penggunaan fungsi groupby:

import pandas as pd
# 创建一个DataFrame对象
data = {'Name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob'],
        'Age': [25, 30, 35, 25, 30],
        'Salary': [5000, 6000, 7000, 5000, 6000]}
df = pd.DataFrame(data)
# 按照Name列进行分组,并计算平均工资
grouped = df.groupby('Name')
average_salary = grouped['Salary'].mean()
print(average_salary)
Salin selepas log masuk

Dalam contoh di atas, kami mencipta objek DataFrame yang mengandungi Nama, Umur dan Gaji. Kami kemudian menggunakan fungsi groupby untuk mengumpulkan mengikut lajur Nama dan mengira purata gaji bagi setiap kumpulan. Akhirnya, kami mencetak keputusan untuk gaji purata.

Fungsi kumpulan mengikut boleh melakukan operasi yang lebih kompleks, seperti menggunakan fungsi agregat, menapis data, melintasi kumpulan, dsb. Berikut ialah beberapa operasi fungsi kumpulan mengikut yang biasa digunakan:

- Gunakan fungsi pengagregatan: Anda boleh menggunakan fungsi pengagregatan (seperti jumlah, min, kiraan, dsb.) untuk mengagregat data terkumpul untuk mendapatkan keputusan statistik setiap kumpulan.

- Tapis data: Anda boleh menapis data terkumpul mengikut syarat untuk mendapatkan data yang memenuhi syarat.

- Traverse kumpulan: Anda boleh menggunakan gelung for untuk melintasi data terkumpul dan beroperasi pada setiap kumpulan.

Selain perpustakaan panda, bahasa pengaturcaraan lain dan perpustakaan pemprosesan data juga menyediakan fungsi kumpulan mengikut kumpulan data yang serupa. Dalam penggunaan khusus, anda boleh memilih fungsi kumpulan mengikut keperluan khusus dan struktur data, dan merujuk kepada dokumentasi yang sepadan untuk digunakan.

Ringkasnya, fungsi groupby ialah fungsi pemprosesan data biasa yang digunakan untuk mengumpulkan data. Ia boleh membahagikan data kepada berbilang kumpulan berdasarkan syarat yang ditetapkan dan melaksanakan pengagregatan, statistik atau operasi lain pada setiap kumpulan. Penggunaan khusus mungkin berbeza-beza bergantung pada bahasa pengaturcaraan dan perpustakaan pemprosesan data, dan anda perlu merujuk kepada dokumentasi yang sepadan untuk digunakan.

Atas ialah kandungan terperinci Cara menggunakan fungsi groupby. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
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