Teknik Pengolahan Data : Mengenal Missing Values dan Cara-Cara Menanganinya
Ketika memulai -pembuatan model Machine Learning atau suatu proyek Data Science, kita biasanya akan memulai EDA atau Exploratory Data Analysis dengan harapan menemukan pola dan wawasan yang menarik tentang data sebelum kita melanjutkan untuk mengekstrak fitur dan membangun model. Tetapi sangat umum untuk menemukan banyak nilai yang hilang (missing values) dalam data yang kita miliki. Nilai-nilai yang hilang atau Missing Values ini muncul karena banyak faktor yang berada di luar kendali kita seperti misalnya karena cara pengambilan data.
Dalam beberapa kasus, nilai tidak tersedia sama sekali untuk observasi. Meski demikian, kita tetap perlu menangani nilai-nilai yang hilang tersebut sebelum melangkah lebih jauh. Mari kita lihat cara melakukannya. Tidak ada satu teknik standar atau solusi umum untuk menangani nilai yang hilang, tetapi ada beberapa cara yang dapat kita gunakan bergantung pada kasus yang kita hadapi untuk menangani nilai yang hilang dalam data. Pada artikel ini. DQLab akan berbagi mengenai cara-cara penanganan data hilang, sebelum itu perlu untuk kita pahami apa saja jenis dari data hilang. Yuk simak penjelasannya!
1. Tipe-Tipe Missing Values / Data Hilang
Kita dapat mengklasifikasikan Missing Values dalam berbagai tipe. Setiap jenis nilai yang hilang memerlukan penanganan yang sedikit berbeda. Jenis utamanya adalah :
Hilang Sepenuhnya Secara Acak (MCAR, Missing Completely At Random)
Hilang Secara Acak (MAR, Missing At Random)
Hilang Tidak Secara Acak (MNAR, Missing Not At Random)
Seperti namanya hilang sepenuhnya secara acak berarti bahwa tidak ada hubungan antara apakah titik data hilang dan nilai dalam kumpulan data, hilang atau diamati. Data yang hilang hanyalah subset acak dari data. Adapun hilang secara acak berarti bahwa kecenderungan nilai yang hilang memiliki hubungan sistematis dengan data yang diamati tetapi tidak dengan data yang hilang.
Artinya observasi yang hilang tidak ada sangkut pautnya dengan nilai yang hilang tetapi ada korelasi dengan variabel yang diamati. Misalnya jika Anda mengikuti survei tentang gangguan mental pada pria dan wanita, kemungkinan kecil pria akan melaporkan depresi mereka atau sebaliknya, tetapi itu tidak ada hubungannya dengan tingkat depresi mereka.Tidak ada secara acak berarti ada hubungan yang berbeda antara kecenderungan suatu nilai untuk hilang dan nilainya. Jadi dalam survei depresi kami, responden dengan nilai depresi yang lebih tinggi gagal mengisi survei karena tingkat depresi mereka.
2. Cara Penanganan Missing Values 1 : Menghapus Keseluruhan Baris (Row)
Cara termudah untuk menangani data hilang adalah dengan membuang kolom / baris yang datanya tidak tersedia. Perlu dicatat bahwa cara ini hanya berlaku dalam dua jenis data yang hilang pertama, MCAR dan MAR. Kedua jenis data ini secara umum, aman bagi kita untuk menghapus data dengan nilai yang hilang bergantung pada kemunculannya. sedangkan dalam kasus ketiga menghapus pengamatan dengan nilai yang hilang dapat menghasilkan bias dalam model. Perhatikan contoh penghapusan data hilang pada Melbourne Housing Dataset berikut :
Kedua pendekatan tersebut memiliki kelebihan dan kekurangan masing-masing dan kita harus menganalisis kasus yang terjadi untuk memutuskan apa yang perlu dilakukan. Jika kita menghapus baris, jumlah total poin data kita untuk melatih model kita akan turun yang dapat mengurangi kinerja model. Lakukan ini hanya jika kita memiliki banyak contoh pelatihan dan baris dengan data yang hilang jumlahnya tidak terlalu tinggi.
Menghapus kolom sama sekali akan menghapus fitur dari model kita, yaitu prediksi model tidak akan bergantung pada luas bangunan. Terkadang kita dapat menghapus variabel atau kolom jika datanya hilang untuk lebih dari 60% pengamatan tetapi hanya jika variabel itu tidak signifikan. Secara umum, menghapus data bukanlah pendekatan yang baik dalam banyak kasus karena kita kehilangan banyak informasi yang berpotensi berguna. Mari kita lihat pendekatan yang lebih baik untuk menangani data yang hilang.
3. Cara Penanganan Missing Values 2 : Menghitung Nilai Pengganti (Imputation)
Ada banyak cara untuk memperhitungkan nilai pengganti data, seperti :
Nilai konstanta yang merupakan bagian dari kumpulan nilai yang mungkin dari variabel itu, seperti 0, berbeda dari semua nilai lainnya
Nilai rata-rata, median, atau mode untuk kolom
Nilai yang diperkirakan oleh model prediktif lain
Beberapa Imputasi lain
Mari perhatikan dataset yang kita miliki tadi, dan kita akan mencoba cara ini seperti berikut :
Kode di atas akan menghasilkan dataset seperti ini
Seperti yang dapat kita lihat, kode di atas menghubungkan nilai kolom BuildingArea dengan nilai rata-rata kolom itu. Kita dapat menggunakan fungsi fillna untuk memasukkan nilai tetap, mean, median, dll.
Baca Juga : Mendalami Array Python Dengan Mempelajari Rotation
4. Yuk Pelajari Lebih Lanjut Mengenai Data Processing Bersama DQLab!
Ingin mempelajari Python lebih dalam? Ayo mulai belajar bersama DQLab secara GRATIS! Yuk, bergabung di DQLab! Kamu bisa membangun portofolio datamu dengan belajar data science di DQLab. Untuk kamu yang ingin mulai belajar data science atau siap berkarir jadi Data Analyst, Data Scientist, dan Data Engineer, persiapkan diri kamu dengan tepat sekarang. Tidak ada kata terlambat untuk belajar. Yuk #MulaiBelajarData di DQLab.
Dengan belajar di DQLab, kamu bisa:
Menerapkan teknik mengolah data kotor, hasilkan visualisasi data dan model prediksi dengan studi kasus Retail dan Finansial
Dapatkan sesi konsultasi langsung dengan praktisi data lewat data mentoring
Bangun portofolio data langsung dari praktisi data Industri
Akses Forum DQLab untuk berdiskusi.
Simak informasi di bawah ini untuk mengakses gratis module "Introduction to Data Science":
Buat Akun Gratis dengan Signup di DQLab.id/signup
Akses module Introduction to Data Science
Selesaikan modulenya, dapatkan sertifikat & reward menarik dari DQLab
Semangat belajar sahabat Data DQLab!
Penulis : Jihar Gifari
Editor : Annissa Widya Davita