Pandas Groupberdasarkan Rata-rata

Pandas Groupberdasarkan Rata Rata



Ketika kita menambahkan dua atau lebih nilai bersama-sama dan jumlah mereka dibagi dengan jumlah total nilai yang ditambahkan bersama-sama, hasilnya adalah rata-rata. Pandas Mean mengembalikan rata-rata data atau nilai di sepanjang sumbu tertentu. Serangkaian dengan rata-rata melintasi sumbu akan dikembalikan oleh panda jika metode mean() diterapkan ke kerangka data. Panda mengembalikan nilai numerik (angka tunggal) jika 'mean()' digunakan pada seri. Fungsi dapat diterapkan ke kategori setelah membuat grup kategori. Ini adalah ide sederhana tetapi teknik yang sangat efektif yang sering diterapkan dalam ilmu data. Ini memungkinkan kami membuat ringkasan data untuk setiap grup, menerapkan modifikasi khusus grup, dan melakukan penyaringan data. Dengan fungsi groupby(), objek dapat dibagi, fungsi dapat diterapkan, dan produk dapat digabungkan. Kumpulan data besar dapat dikelompokkan dengan ini, dan operasi dapat dilakukan pada grup.

Bagaimana Cara Menggunakan Metode groupby.mean() di Pandas?

Untuk menghitung rata-rata kerangka data atau rata-rata kolom tertentu dari kerangka data, kita dapat menggunakan fungsi groupby.mean() . Kami akan menunjukkan cara menggunakannya dalam contoh berikut.







Contoh #01: Menentukan Rata-rata Satu Kolom Bilangan Bulat dengan Mengelompokkan Data Satu Kolom

Dengan menggunakan fungsi pd.DataFrame() , pertama-tama kita akan membuat kerangka data sehingga kita dapat membagi data kolom atau kolom kerangka data menjadi beberapa kelompok dan kemudian menemukan nilai rata-ratanya. Sebelum membuat bingkai data, kita harus mengimpor modul pandas bersama dengan pustaka numpy.





Seperti yang dapat dilihat, kami telah membuat kerangka data kami dengan menggunakan kamus pandas. Kami memiliki 3 kolom dalam kerangka data df kami, yaitu, 'item', 'produsen', dan 'kuantitas'. Di kolom 'barang', kami telah menyimpan nilai ('kemeja', 'dasi', 'celana', 'kemeja', 'dasi', 'celana', 'kemeja', 'celana', 'celana', ' tie'), sedangkan kolom 'manufacturer' dan 'quantity' berisi nilai ('italy', 'france', 'china', 'france',  'china', 'italy', 'china', 'italy', 'Prancis', 'Cina') dan (13, 16, 21, 32, 26, 41, 24, 42, 12, 15) masing-masing. Mari kelompokkan nilai di kolom pabrikan dan tentukan nilai kuantitas rata-rata untuk setiap pabrikan yang berbeda.





Nilai produsen 'china' memiliki nilai kuantitas rata-rata 21,5, nilai kuantitas rata-rata untuk 'perancis' adalah 20,0, dan nilai kuantitas rata-rata untuk 'Italia' adalah 32,0. Kita juga dapat menentukan indeks ke output dengan menggunakan fungsi reset_index dengan fungsi groupby.mean().



Contoh # 02: Temukan Rata-rata Kolom Float Tunggal dengan Mengelompokkan Data Satu Kolom

Kita telah melihat bagaimana kita dapat menemukan rata-rata kolom bilangan bulat setelah mengelompokkan data. Sekarang mari kita coba kolom tipe data lain seperti float. Kerangka data dengan setidaknya satu kolom dengan nilai float akan dibuat menggunakan fungsi pd.DataFrame() .

Dengan meletakkan kamus di dalam pd.DataFrame(), kita telah membuat kerangka data dengan tiga kolom. Kolom 'name' menyimpan nama beberapa pemain acak ('Sam', 'Jay', 'Leo', 'Mike', 'Will', 'Billy', 'Jhonny', 'Lara', 'Hanna', 'Tony'), kolom 'tim' yang mewakili tim dari mana setiap pemain berasal ('A', 'A', 'B',  'A', 'B', 'A', 'C', 'B ', 'C', 'C'), dan kolom 'height' menyimpan tinggi setiap pemain sebagai nilai float (5.6, 5.4, 6.3, 5.2, 5.5, 6.4, 5.6, 5.8, 6.0, 5.2). Mari kelompokkan data di kolom 'tim' dan tentukan nilai tinggi rata-rata untuk setiap nilai 'tim' yang berbeda.

Anda dapat melihat bahwa rata-rata nilai tinggi badan pemain tim A adalah 5,65, sedangkan rata-rata tinggi badan pemain tim B dan C masing-masing adalah 5,866 dan 5,6.

Contoh # 03: Menentukan Rata-rata Beberapa Kolom Menggunakan Fungsi groupby.mean()

Dalam contoh sebelumnya, kami menentukan rata-rata satu kolom. Namun, rata-rata banyak kolom untuk setiap grup juga dapat ditentukan. Mari buat kerangka data yang memiliki lebih dari satu kolom numerik, setelah mengimpor modul pandas dan numpy.

Dalam kerangka data yang baru dibuat, ada tiga kolom dengan label 'nama', 'skor', dan 'cocok'. Nama kolom yang memiliki nilai data sebagai string  ('Ron', 'Jim', 'Dany', 'Jim', 'Jim', 'Dany', 'Ron', 'Ron', 'Dany', 'Jim' ), sedangkan 'skor' dan 'cocok' terdiri dari data numerik seperti (3, 4, 2, 4, 1, 5, 2, 3, 1, 2) dan (2, 3, 1, 2, 1, 3 , 4, 1, 2, 1). Sekarang mari kita cari rata-rata kolom 'skor' dan 'cocok' setelah mengelompokkan data kolom 'nama'. Fungsi groupby.mean() akan digunakan untuk ini.

Dapat dilihat bahwa grup 'Dany' memiliki skor rata-rata 2,66 dalam 2,00 pertandingan. Grup Jim memiliki skor rata-rata 2,75 dan nilai rata-rata pertandingan yang dimainkan adalah 1,75. Sedangkan grup ‘Ron’ memiliki nilai rata-rata skor 2,66 dan nilai rata-rata pertandingan yang dimainkan adalah 2,33.

Rata-rata sekelompok kategori berdasarkan objek juga dapat dihitung menggunakan metode agg(). Kami akan menyediakan mean sebagai argumen ke fungsi agg(). Untuk menggabungkan menggunakan satu atau beberapa operasi di sumbu yang diberikan, kita dapat menggunakan fungsi agg() .

Outputnya sama seperti sebelumnya.

Contoh # 04: Tentukan Rata-rata Kolom Tertentu dengan Mengelompokkan Beberapa Kolom

Dalam contoh 1, 2, dan 3, kami telah mengelompokkan nilai atau data dari satu kolom. Sekarang kita akan mengelompokkan beberapa kolom dengan menggunakan daftar label kolom di dalam fungsi groupby(), dan kemudian kita akan menemukan nilai rata-rata untuk setiap grup. Kamus 'd' akan dilewatkan di dalam fungsi pd.Dataframe() sebagai input untuk membuat kerangka data.

Kami telah membuat kerangka data yang diperlukan. Kolom 'olahraga' menyimpan nama beberapa olahraga ('Badminton', 'football', 'tennis', 'basket', 'football', 'tennis', 'basket', 'football', 'Badminton', ' basket', 'basket', 'tennis'), nama negara ('China', 'Rusia', 'Italia', 'Spanyol', 'Rusia', 'Italia', 'China', 'Italia', ' Spanyol', 'China', 'Rusia', 'Italia') disimpan di kolom 'negara'. Sedangkan pada kolom 'menang' kami telah menyimpan jumlah pertandingan yang dimenangkan oleh masing-masing negara di setiap cabang olahraga (13, 10, 6, 7, 10, 12, 7, 11, 8, 13, 11, 6). Mari kita gunakan fungsi groupby.mean() untuk menemukan rata-rata nilai kolom 'menang' dengan mengelompokkan kolom 'olahraga' dan 'negara'.

Fungsi tersebut berhasil menentukan rata-rata nilai kolom 'menang' untuk setiap cabang olahraga di tanah air. Kerangka data yang dikelompokkan berdasarkan dapat diatur ulang menggunakan fungsi reset_index() , yang juga menghasilkan indeks baru, memberikannya struktur kerangka data yang sesuai.

Indeks ditambahkan untuk setiap baris kerangka data. Untuk menyusun hasil dalam tabel yang menarik, kita juga dapat menggunakan fungsi pivot().

Kesimpulan

Dalam tutorial ini, kita telah membahas apa itu mean atau rata-rata angka dan bagaimana menemukan mean dari kolom tertentu (satu atau lebih) setelah mengelompokkan kolom atau kolom dari kerangka data. Kami menerapkan beberapa contoh dalam artikel ini untuk mengajari Anda cara menentukan rata-rata satu bilangan bulat atau kolom mengambang dengan mengelompokkan data satu kolom; cara menentukan rata-rata beberapa kolom menggunakan fungsi groupby.mean(); dan juga cara menentukan rata-rata kolom tertentu dengan mengelompokkan beberapa kolom.