Langsung ke konten utama

Pre-Processing, Membersihkan Dataframe pada Python

Sebagian kita mungkin mengenal python sebagai salah satu bahasa pemrograman yang dapat digunakan untuk mengolah data. Salah satu module yang cukup umum ialah Pandas. Namun, sedikit dari kita menyadari pentingnya membersihkan data sebelum digunakan. 

Sebelum masuk ke Pemrosesan mari kita nikmati sebuah meme dari reddit:

gambar 1.0

Data yang diolah tidak selalu bersih. Pada beberapa kasus terdapat data unknown atau data yang keluar dari batas wajar dan tidak sesuai mengikuti aturan di dunia nyata. Misal juamlah kuantitas belanja yang mencapai puluhan ribu pada sekali check out atau kuantitas yang nilainya lebih kecil dari satu. Oleh karena itu, diperlukan pembersihan dataset dari data yang rusak atau kotor.

Banyak metode yang dapat dilakukan untuk menormalisasi data, di antaranya mengantinya dengan modus, rata-rata, median, atau menghapusnya. Pada kasus ini, penulis menggunakan teknik dropping atau menghapus data yang rusak atau tak sesuai denagn method .drop().

Sebelum membersihkan dataset. Data perlu diverifikasi atau dicek terlebih dahulu bagaimana kondisinya, apakah terdapat data yang unknown atau tidak normal. Verifikasi data dapat dilakukan dengan method .info() dan .describe() pada data.

Method .info() digunakan untuk mendapatkan informasi dari tiap kolom, seperti banyak data yang terdeteksi dan bentuknya. Dengan begitu kita dapat mengetahui ada berapa baris yang mungkin rusak dan kerusakan ada pada kolom mana saja.

Method .describe() digunakan untuk mendapatkan data statistik dasar dari dataset atau dataframe. Dengan metode tersebut bisa didapatkan, simpangan baku, niulai minimal, maksimal, dan persentil. Berdasar hal tersebut kita dapat menyimpulkan kolom mana saja yang perlu dinormalisasi sehingga tidak ada data yang tidak wajar.

Method  .drop() digunakan untuk menghapus data yang dipilih. Dengan begitu data yang rusak tidak perlu lagi diperhitungkan. Sehingga data yang diperoleh kemudian lebih wajar dan lebih mengambarkan kenyataan.

Untuk memulai pembersihan data, hal pertama yang harus dilakukan adalah mengecek kondisi dataframe dengan metode .info() dan describe(). Pada dataset ini, berikut tampilan setelah perintah DataFrame.info() dijalankan



Gambar 1.1

Terlihat pada dataframe terdapat tujuh kolom dengan empat koilom numerik dan tiga kolom kategorik, dengan data waktu pada salah satunya. Pada kolom non-null count  terdapat sedikit keganjalan dengan jumlah null yang berbeda pada kolom ‘Quantity’. Maka dapat disimpulkan bahwa pada kolom ‘Quantity’terdapat lima belas baris yang berisi data  null.

Selain menggunakan metode .info() untuk memastikan keberadaan data null, dapat juga dilakukan perintah .isnull().any(). Dengan metode tersebut python akan menampilkan apakah pada suatu kolom terdapat data null. Jika terdapat null, akan dikeluarkan True. Sebaliknya jika tidak terdapat null, akan dikeluarkan False.


Gambar 1.2

Untuk mengatasi data yanbg tidak diketahui salah satu caranya ialah dengan menghapus data tersebut. Metode yang digunakan ialah metode drop dengan perintah

dataframe.dropna()


Gambar 1.3

Setela mengecek data dengan metode info, data juga perlu dicek degan metode describe(). Dengan begitu dapat ditentukan seberapa jauh persebara dan simpangan data. Dari sana juga dapat ditemukan apakah terdapat dari dataframe terdapat data yang melenceng secara tidak wajar atau tidak. Pada perintah sebelumnya, penulis memberi tambahan kolom ‘total’ sebagai total harga yang dibayarkan, kuantitas dikali harga satuan.


Gambar 1.4

Pada tampilan terlihat terdapat data kuantitas yang tidak wajar yakni nilai negatif , dan pembelian sebesar 62.000. Untuk membersihkan data yang melenceng dan tak normal dapat dilakukan teknik pembersihan data dengan metode outline dan pengecekan manual. Pengecekan manual digunakan untuk nilai disekitar nilai wajar, tetapi tidak masuk akal seperti kuantitas negatif. Sedangkan teknik outlier digunakan untuk membersihkan data tidak wajar berupa simpangan jauh. Seperti pembelian sebanyak 62.000 satuan.


Gambar 1.5

Teknik outlier adalah teknik membuang data yang lebih kecil dari Q1-dH dengan H merupakan nilai Q3-Q1, atau data yang lebih besar dari Q3+dH.


Gambar 1.6

Dua teknik di atas menggunakan command drop() atau penghapusan data untuk membersihkan data sehingga pada dataframe tak terdapat lagi data yang tidak normal. Setelah dilakukan dua metode di atas, didapatkan dataframe yang bersih dan wajar.

Sekian dari saya. Saya menyadari konten yang saya berikan jauh dari kata sempurna. Oleh karena itu, saya sangat mengapresiasi segala masukan, baik kritik, maupun saran yang diberikan teman-teman, Anda bisa kontak saya melalui email. 

Terima kasih sudah membaca.

Komentar

Postingan populer dari blog ini

Identitas Mahsiswa dan Budaya Korupsi

  Posisi Potensi dan Peran atau yang biasa disingkat PoPoPe merupakan gambaran dari identitas mahasiswa. Popope mengambarkan bagaimana lingkungan dan tugas yang harusnya mahasiswa emban. Berisi tangung jawab dan empati, bukan sekadar omongan atau gelar kebanggan semata. Mahasiswa harus peka mengenai posisinya di masyarakat dalam bernegara. Selain itu, ia harus peka melihat potensi yang dimiliki lingkungannya, bukan malah menjadi eksklusif dan menjadi manusia yang merasa di atas. Berperan lantgsung bukan hanya sebagai mediator melainkan katalisator, bukan hanya orang yang banyak bicara tanpa aksi nyata dan mencari nama tanpa manfaat semat. Meskipun pandemi Covid melanda dunia. Namun, sungguh disayangkan, kerguian negara akibat koruipsi tak menurun. Sadisnya, justru terjadi tren pengingkatan kerugian negara akibat korupsdi sejak 2016 (ICW, 2021). Dari 444 kasus korupsi 107 di antaranya merupakan korupsi proyek Covid19, baik dpengadaan bansos, hingga proyek lainnya. Mahasiswa seba...

Standar Pengolahan Air Otomatis

 Bismillah, Assalamualaikum semua. Inget gak si? Minggu lalu aku pernah bagiin sebuah ide, yang bisa dibilang gila, tentang sistem pengolahan air terintegrasi. Nah, pada kesempatan kali ini, aku bakal bahas sedikti mengenai tugas kelompok tersebut. Pada kesempatan kali ini, aku bakal sampaikan mengenai standar apa aja si, yang musti diterapin pada sistem tersebut. Sebelum masuk lebih dalam, kita bakal breakdown dulu, ada apa aja si di sana? Yang pertama dan pasti ada sistem penyaringan dan pemurnian air. Kedua, ada sistem otomatis, sensor kualitas air. Terakhir, ada IoT, sistem terintegrasi manajemen sumber daya air. Kenapa si harus ada standardisasi? yang jelas agar produk yang dihasilkan dapat terjaga. Lebih lagi air bersih merupakan produk primer manusia. Jadi, kita harus memastikan semuanya aman. Selain itu, dengan adanya standardisasi, sistem ini dapat diaplikasikan dan dikembangkan di tempat lain. Kok bisa? karena sudah ada standar minimumnya sehingga apa yang didapat akan me...

Sistem Cerdas untuk Peningkatan Kualitas Hidup

src: STEI ITB Kemarin Rabu (02/02/2021), aku mengikuti kuliah umum yang disampaikan Prof. Suhono. Pada kuliah umum kali ini, Prof. Suhono mengangkat isu pengaplikasian sistem cerdas untuk meningkatakan kualitas hidup. Kuliah umum ini diadakan oleh KK Teknologi Informasi, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung. Berikut adalah hal-hal yang kudapat dari kuliah umum kali ini. Kemajuan teknologi infomrasi yang sangat cepat telah masuk ke segala bidang. Perkembangan sistem teknologi informasi tak berhenti di sistem otomasi saja, tetapi kehadiran sistem otonom dan cerdasnya juga telah membawa angin segar bagi tatanan kehidupan renaisance 4.0 atau society 5.0 . Pola kehidupan bermasyrakt pun ikut berubah. Namun, bila ditelisik, Indonesia masih cukup tertinggal dalam pengaplikasian sistem cerdas. Sebelum kita bahas lebih lanjut, mari kita telaah dulu, apasih sistem cerdas itu. Menurut Prof. Suhono, sistem cerdas bukan sebuah sistem dengan banyak aplikasi atau sistem ...