Pre-Processing

  •  Data Cleaning

Data Cleaning adalah proses mengidentifikasi dan mengoreksi (atau menghapus) data yang korup, tidak akurat, atau tidak relevan dari dataset. Langkah-langkah umum dalam data cleaning meliputi:

  1. Mengecek nilai yang hilang (missing values)
  2. Menangani duplikasi data
  3. Memperbaiki tipe data yang salah
Contoh kode untuk Data Cleaning :

1. Mengimpor Library Pandas

import pandas as pd
  • Tujuan: Mengimpor library Pandas yang digunakan untuk manipulasi data dan analisis data dalam bentuk data frame.
2. Membaca Data dari File CSV
data = pd.read_csv('data_lulusan.csv')
  • Tujuan: Membaca data dari file CSV bernama 'data_lulusan.csv' dan menyimpannya dalam sebuah DataFrame bernama data.
3. Mengecek Missing Values
print("Missing values per column:\n", data.isnull().sum())
  • Tujuan: Mengecek jumlah nilai yang hilang (missing values) dalam setiap kolom di DataFrame.
  • Keterangan: data.isnull().sum() menghitung jumlah nilai NaN di setiap kolom, dan hasilnya dicetak ke layar.
4. Menghapus Baris dengan Nilai yang Hilang
data_cleaned = data.dropna()
  • Tujuan: Menghapus semua baris yang memiliki nilai hilang (missing values) dari DataFrame.
  • Keterangan: data.dropna() mengembalikan DataFrame baru tanpa baris yang memiliki nilai NaN.
5. Menghapus Duplikasi Data
data_cleaned = data_cleaned.drop_duplicates()
  • Tujuan: Menghapus baris yang duplikat dari DataFrame.
  • Keterangan: data_cleaned.drop_duplicates() mengembalikan DataFrame baru tanpa baris yang duplikat.
6. Mengubah Tipe Data yang Salah
data_cleaned['IPK'] = data_cleaned['IPK'].astype(float)
  • Tujuan: Mengubah tipe data kolom 'IPK' menjadi tipe data float.
  • Keterangan: astype(float) mengkonversi nilai dalam kolom 'IPK' ke tipe data float. Hal ini penting untuk memastikan bahwa semua data dalam kolom 'IPK' adalah numerik dan dapat digunakan dalam perhitungan statistik.
7. Menampilkan Informasi Data Setelah Cleaning
print(data_cleaned.info())
  • Tujuan: Menampilkan informasi ringkas tentang DataFrame setelah proses pembersihan data selesai.
  • Keterangan: data_cleaned.info() memberikan informasi tentang jumlah total baris, kolom, tipe data setiap kolom, dan jumlah nilai non-null dalam setiap kolom. Ini membantu memverifikasi bahwa data telah dibersihkan dengan benar.

  • Data Transformation

Data Transformation adalah proses mengubah data ke format yang lebih tepat atau lebih bermanfaat untuk analisis. Langkah-langkah umum dalam data transformation meliputi:

  1. Menambahkan kolom baru berdasarkan kolom yang ada
  2. Mengubah skala data (misalnya normalisasi)
  3. Menentukan status kelulusan lulusan tepat waktu atau tidak

Contoh kode untuk Data Transformation :


1. Menambahkan Kolom Baru 'Kelulusan_Tepat_Waktu'
data_cleaned['Kelulusan_Tepat_Waktu'] = data_cleaned['Semester_Lulus'] <= 8
  • Tujuan: Menambahkan kolom baru yang menunjukkan apakah seorang mahasiswa lulus tepat waktu atau tidak.
  • Keterangan:
    • data_cleaned['Semester_Lulus'] <= 8 adalah sebuah kondisi logika yang memeriksa apakah nilai dalam kolom Semester_Lulus kurang dari atau sama dengan 8 (mengasumsikan kelulusan tepat waktu adalah 8 semester atau 4 tahun).
    • Hasil dari kondisi ini (True atau False) disimpan dalam kolom baru Kelulusan_Tepat_Waktu.
2. Menghitung IPK Rata-Rata Setiap Lulusan
data_cleaned['IPK_Rata_Rata'] = data_cleaned.groupby('NIM')['IPK'].transform('mean')
  • Tujuan: Menghitung rata-rata IPK untuk setiap mahasiswa berdasarkan NIM (Nomor Induk Mahasiswa).
  • Keterangan:
    • data_cleaned.groupby('NIM')['IPK'] mengelompokkan data berdasarkan kolom NIM dan mengambil kolom IPK.
    • transform('mean') menerapkan fungsi rata-rata pada setiap grup (setiap NIM).
    • Hasilnya adalah kolom baru IPK_Rata_Rata yang berisi nilai rata-rata IPK untuk setiap mahasiswa.
3. Normalisasi Kolom IPK
data_cleaned['IPK_Normalized'] = (data_cleaned['IPK'] - data_cleaned['IPK'].min()) / (data_cleaned['IPK'].max() - data_cleaned['IPK'].min())
  • Tujuan: Normalisasi nilai IPK ke rentang 0 sampai 1.
  • Keterangan:
    • data_cleaned['IPK'] - data_cleaned['IPK'].min() mengurangi setiap nilai IPK dengan nilai IPK minimum dalam dataset.
    • (data_cleaned['IPK'].max() - data_cleaned['IPK'].min()) menghitung rentang nilai IPK (selisih antara nilai maksimum dan minimum).
    • Hasil pembagian ini memberikan nilai IPK yang dinormalisasi ke dalam rentang 0 sampai 1, disimpan dalam kolom baru IPK_Normalized.
4. Menampilkan Hasil Data Transformation
print(data_cleaned.head())
  • Tujuan: Menampilkan lima baris pertama dari DataFrame setelah proses transformasi.
  • Keterangan:
    • data_cleaned.head() menampilkan lima baris pertama dari DataFrame data_cleaned.
    • Ini membantu untuk memverifikasi bahwa kolom baru telah ditambahkan dan transformasi telah diterapkan dengan benar.

  • Data Reduction

Data Reduction adalah proses mengurangi volume data yang harus dianalisis dan diproses tanpa menghilangkan informasi penting. Langkah-langkah umum dalam data reduction meliputi:

  • Menghapus kolom yang tidak relevan
  • Menggabungkan beberapa kolom menjadi satu

Contoh kode untuk Data Reduction :


1. Menghapus Kolom yang Tidak Relevan
columns_to_drop = ['Alamat', 'No_Telepon'] # Contoh kolom yang mungkin tidak relevan data_reduced = data_cleaned.drop(columns=columns_to_drop)
  • Tujuan: Menghapus kolom-kolom yang dianggap tidak relevan untuk analisis atau modeling.
  • Keterangan:
    • columns_to_drop adalah sebuah list yang berisi nama-nama kolom yang ingin dihapus dari DataFrame.
    • data_cleaned.drop(columns=columns_to_drop) menghapus kolom-kolom yang ada di dalam list columns_to_drop dari DataFrame data_cleaned.
    • Hasilnya adalah DataFrame baru data_reduced yang tidak memiliki kolom Alamat dan No_Telepon.
2. Menggabungkan Beberapa Kolom
data_reduced['Nama_Lengkap'] = data_cleaned['Nama_Depan'] + ' ' + data_cleaned['Nama_Belakang']
  • Tujuan: Menggabungkan beberapa kolom menjadi satu kolom baru.
  • Keterangan:
    • Kolom Nama_Depan dan Nama_Belakang digabungkan menjadi satu kolom Nama_Lengkap.
    • Operasi data_cleaned['Nama_Depan'] + ' ' + data_cleaned['Nama_Belakang'] menggabungkan nilai dalam kolom Nama_Depan dengan nilai dalam kolom Nama_Belakang, dipisahkan oleh sebuah spasi (' ').
    • Hasilnya disimpan dalam kolom baru Nama_Lengkap di DataFrame data_reduced.
3. Menampilkan Data Setelah Reduction
print(data_reduced.head())
  • Tujuan: Menampilkan lima baris pertama dari DataFrame setelah proses data reduction.
  • Keterangan:
    • data_reduced.head() menampilkan lima baris pertama dari DataFrame data_reduced.
    • Ini membantu untuk memverifikasi bahwa kolom-kolom yang tidak relevan telah dihapus dan kolom baru telah ditambahkan dengan benar.












Komentar

Postingan populer dari blog ini

QUIZ DATA MINING 1107

Supervised Learning (Prediksi) & Algoritma

Supervised Learning (Klasifikasi) & Algoritma