Menu
CoddyTech

Pembersihan Data: Data yang Hilang

Pelajaran 6 dari 19 dalam kursus Analisis Pandas di Coddy.

Biasanya, file CSV berisi data yang hilang, nama kolom yang tidak tepat, duplikat, nilai yang tidak tepat, dan tipe data yang tidak tepat. Module Pandas memiliki semua alat untuk menangani masalah ini.

Data yang Hilang

Untuk mengetahui apakah suatu nilai hilang atau tidak:

df.isna()

Untuk mengetahui jumlah nilai yang hilang di setiap kolom:

df.isna().sum()

Fungsi isna() mengubah semua nilai menjadi true atau false (hilang atau tidak), lalu menerapkan hasilnya. sum() akan memperlakukan true sebagai 1 dan false sebagai 0.

Untuk melakukan iterasi pada kolom dan jumlah nilai yang hilang, gunakan method items() seperti pada dictionary (meskipun ini adalah object series Pandas):

for column, missing_num in df.isna().sum().items():
	print(column, missing_num)

Untuk mengisi semua nilai yang hilang di seluruh dataframe, gunakan method fillna():

df = df.fillna("some value")

Untuk mengisi nilai yang hilang hanya di satu kolom, gunakan fungsi fillna() pada kolom:

df["some_column"] = df["some_column"].fillna("some value")

Kamu juga bisa menghapus semua baris yang memiliki nilai hilang:

df = df.dropna()
challenge icon

Tantangan

Mudah

File CSV missing.csv berantakan.

Berikut 5 baris pertama file tersebut:

ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID
1,France,Signal violet,marksmanship,14,0.1924,1
1,France,Signal violet,marksmanship,14,0.1924,1
2,Solomon Islands,Pearl violet,,4,,1
3,Germany,,calligraphy,12,0.88646,0

Bersihkan datanya:

  • Isi nilai yang hilang di semua kolom yang memiliki lebih dari 2 nilai hilang dengan nilai Missing
  • Hapus semua baris lainnya yang memiliki nilai hilang.

Untuk melihat progresmu, cetak df: print(df)

Simpan hasil akhirnya dalam variabel df.
Jangan cetak df untuk lulus kasus uji!

Coba sendiri

# pandas as pd sudah diimpor
df = pd.read_csv("./missing.csv")
# Tulis kodemu di bawah ini

Semua pelajaran di Analisis Pandas

Latihan sendiri: Compiler Python online