Pandas GroupBy – Looping Dalam Group

Pada modul ini kita akan latihan melakukan looping dalam group.

Pertama load library dan data yang digunakan dan grouping berdasarkan sector.

import pandas as pd

df = pd.read_csv("fortune1000.csv", index_col="Rank")
sect = df.groupby("Sector")

df.head()

Contoh kita ingin mengambil semua data perusahaan dengan revenue tertinggi dari masing-masing sector.

Pertama kita buat dahulu dataframe kosong untuk menampung data yang akan ditampilkan. Gunakan method DataFrame dengan parameter columns.

df2 = pd.DataFrame(columns=df.columns)

Lalu buat looping untuk membaca isi group. Ambil data perusahan dengan revenue tertinggi menggunakan method nlargest(). Lalu assign data tersebut ke dataframe yang baru dibuat.

for sector, data in sect:
  highest_rev = data.nlargest(1, "Revenue")
  df2 = df2.append(highest_rev)

Jika kita lihat isi dari dataframe baru, sesuai ekspektasi akan berisi data perusahaan dengan revenue tertinggi dari masing-masing sector.

Pendekatan diatas bukanlah mutlak, dengan tujuan yang sama Anda bisa mengguna cara lain.

Tujuan modul ini adalah bagaimana cara melakukan looping pada object groupby.

Sharing is caring:

Leave a Comment