Materi
Pembersihan data termasuk fase persiapan data: memperbaiki nilai yang ditulis tidak seragam, membuang baris kembar, dan menangani nilai hilang. Cara menemukan dan mengisi sel kosong dengan isna, fillna, dan dropna sudah diajarkan di kelas Analisis Data dengan Python. Pelajaran ini membahas urutan kerjanya dan pilihan nilai pengisinya.
Baris kembar baru terdeteksi setelah penulisannya seragam. " Bandung", "bandung", dan "BANDUNG " adalah tiga teks berbeda bagi komputer. str.strip() membuang spasi di kedua tepi, str.lower() menyeragamkan huruf, lalu drop_duplicates() membuang baris yang seluruh kolomnya sama dengan baris sebelumnya; argumen subset membatasi pemeriksaan ke kolom tertentu.
Imputasi berarti mengganti nilai hilang dengan taksiran. User Guide scikit-learn menjelaskan SimpleImputer dapat memakai rata-rata (mean), median, nilai paling sering (most_frequent), atau sebuah konstanta, dihitung per kolom. Rata-rata ikut tertarik oleh nilai ekstrem, median tidak: dari data 3, 4, 5, dan 100 rata-ratanya 28 padahal tiga nilainya di bawah 6, sedangkan mediannya 4,5. Untuk kolom kategori, most_frequent mengisi dengan kategori terbanyak.
import numpy as np
from sklearn.impute import SimpleImputer
# lama kerja (tahun), jarak rumah (km)
X = np.array([[2, 10.0], [np.nan, 4.0], [7, np.nan], [3, 6.0]])
imp = SimpleImputer(strategy="mean")
print(imp.fit_transform(X))
print(imp.statistics_) # [4. 6.66666667]