Cleaning Dataset

By | January 15, 2021
Print Friendly, PDF & Email
1,702 Views

Sinopsis

Bekerja dengan dataset yang sangat besar ukurannya, perlu kecermatan. Terkadang dataset tersebut ada yang masih kosong dan untuk melakukan cek satu-persatu secara manual adalah pekerjaan harus dikurangi dan dihindari agar tidak terjadi human error, seperti dataset berikut:

Sebagai informasi, bahwa tools yang digunakan menggunakan python, numpy, pandas, dan scipy. Jadi bila bagi pemula yang ingin belajar mengenai python silahkan beli buku saya di buku-belajar-mudah-python. Bisa beli disini

  1. https://www.bukalapak.com/p/hobi-koleksi/buku/komputer-487/wco01c-jual-belajar-mudah-python-dengan-package-open-source-mulkan-syarif-graha-ilmu
  2. https://www.tokopedia.com/bukukuliahan/belajar-mudah-python-dengan-package-open-source-mulkan-syarif
  3. https://togamas.com/detail-buku-8585=Belajar_Mudah_Python_dengan_Package_Open_Source_
  4. https://petramas.co.id/product/belajar-mudah-python-dengan-package-open-source-a8c4 

Pembahasan buku yaitu

  1. Python
  2. IDE Spyder sebagai Editor
  3. Package Numpy untuk perhitungan array
  4. Package Matplolib untuk visualisasi grafis
  5. Package Pandas untuk pengolahan data terstruktur
  6. Package Scipy untuk pengolahan data statistika
  7. Package OpenCV (instal tersendiri)

Sebelum menerapkan teknik missing value-mean, yaitu mengisi data kosong tersebut dengan reratanya, maka tahapan yang perlu dicermati adalah memastikan bahwa kolom tersebut ada isinya.

import pandas as pd
import numpy as np
print('Membaca dataset dan melakukan cek data')
d = pd.read_excel('data_.xlsx')
header = d.columns
print('Cek Header Kolom yang berisi sum() == NOL')
for h in header:
    if d[h].sum()==0:
        print('didapatkan! pada header : ',h)

hasil

Membaca dataset dan melakukan cek data
Cek Header Kolom yang berisi sum() == NOL
didapatkan! pada header :  R207

Ternyata dataset diatas, terdapat kolom yang isinya kosong semua yaitu R207.

Sehingga kolom tersebut harus dibuang terlebih dahulu, sehingga menjadi berikut.

Menggunakan library Imputer seperti berikut untuk mencari missing value dan mengisi dengan reratanya.

import pandas as pd
import numpy as np
from sklearn.preprocessing import Imputer
print('Membaca dataset dan missing value')
d = pd.read_excel('data revisi.xlsx')
header = d.columns
array  = np.array(d)


imputer = Imputer(missing_values='NaN',strategy = 'mean',axis=0)
imputer = imputer.fit(array)
array2 = imputer.fit_transform(array)

result = pd.DataFrame(data=array2,columns=header)
result.to_excel("dataset final.xlsx")

print('selesai')

 

Leave a Reply