DATA MINING PART-02 Data Preprocessing dalam Data Mining [email protected]
Pentingnya Data Preprocessing Data mining adalah proses penemuan pola atau informasi yang berguna dari data yang besar dan kompleks . Sebelum melakukan data mining, data harus dipersiapkan dengan baik agar hasil yang diperoleh relevan dan berkualitas . Proses persiapan data ini disebut Data Preprocessing . Data preprocessing adalah langkah pertama dalam data mining yang bertujuan untuk mempersiapkan data mentah agar bisa digunakan dalam proses penambangan data. Tanpa preprocessing, model yang dibangun mungkin akan menghasilkan hasil yang tidak akurat , bahkan bias. Berikut adalah beberapa alasan mengapa preprocessing sangat penting : Data seringkali tidak lengkap : Banyak data yang hilang atau tidak lengkap . Data seringkali mengandung kesalahan atau noise : Kesalahan input data atau data yang tidak relevan dapat mengganggu analisis . Skala data yang berbeda : Beberapa algoritma membutuhkan data dalam bentuk skala yang konsisten .
Tahapan dalam Data Preprocessing a. Pembersihan Data (Data Cleaning) Pembersihan data adalah proses menangani data yang hilang , data duplikat , dan data yang salah . Menghapus Data yang Tidak Relevan : Menghapus atribut yang tidak memiliki pengaruh terhadap hasil analisis . Mengatasi Missing Values : Data yang hilang dapat diisi dengan nilai rata-rata, median, modus, atau bahkan dihapus jika diperlukan . Menghapus Duplikasi : Jika terdapat data yang terduplikasi , maka data tersebut perlu dihapus agar tidak mempengaruhi analisis . b. Transformasi Data (Data Transformation) Transformasi data adalah proses mengubah format atau skala data agar sesuai dengan kebutuhan algoritma yang akan digunakan . Normalisasi : Proses mengubah data ke dalam skala yang seragam , misalnya mengubah data dengan rentang yang sangat berbeda menjadi data dengan rentang yang sama ( misalnya [0,1]). Diskritisasi : Mengubah data numerik menjadi data kategori ( misalnya usia bisa dibagi menjadi kategori : muda , dewasa , tua ). Pengkodean Kategori : Mengubah data kategorikal menjadi format numerik yang bisa digunakan dalam algoritma .
c. Pengurangan Dimensi (Dimensionality Reduction) Proses ini digunakan untuk mengurangi jumlah atribut atau fitur dalam dataset tanpa mengorbankan kualitas informasi yang signifikan . PCA (Principal Component Analysis) : Teknik yang digunakan untuk mengurangi dimensi data dengan mencari komponen utama yang menjelaskan variabilitas dalam data. LDA (Linear Discriminant Analysis) : Teknik pengurangan dimensi yang digunakan untuk klasifikasi , dengan fokus pada pemisahan antar kelas . d. Penyusunan Data (Data Integration) Jika data berasal dari berbagai sumber , tahap ini bertujuan untuk mengintegrasikan data tersebut menjadi satu set data yang utuh . Penggabungan Sumber Data : Menggabungkan data yang berbeda menjadi satu set yang lebih besar dan lebih komprehensif . e. Pencocokan Data (Data Matching) Data yang berasal dari sumber yang berbeda sering kali memiliki atribut yang berbeda meskipun menyatakan informasi yang sama . Pencocokan data bertujuan untuk mengidentifikasi entitas yang serupa dalam dataset yang berbeda .
Teknik dan Algoritma dalam Data Preprocessing Beberapa teknik yang sering digunakan dalam preprocessing data antara lain: Imputasi Nilai Hilang : Menggunakan teknik statistik untuk memperkirakan dan mengisi data yang hilang . Standardisasi : Mengubah data ke bentuk standar yang digunakan untuk menghitung statistik ( misalnya mengurangi nilai rata-rata dan membaginya dengan deviasi standar ). Clustering : Mengelompokkan data yang mirip untuk mempermudah analisis dan visualisasi . Outlier Detection : Mendeteksi dan menangani data yang berada di luar batas normal.
CONTOH STUDI KASUS Diketahui : D ataset yang memiliki data yang hilang dan lakukan proses imputation. Lakukan normalisasi pada dataset yang memiliki atribut numerik dengan rentang yang berbeda . Terapkan teknik pengurangan dimensi ( misalnya PCA) pada dataset yang memiliki banyak fitur . Penyelesaiannya : Dapat m engikuti beberapa langkah data preprocessing yang melibatkan imputation untuk mengatasi data yang hilang , normalisasi untuk atribut numerik dengan rentang berbeda , dan pengurangan dimensi ( misalnya PCA) untuk dataset dengan banyak fitur .
Langkah 1: Ambil Dataset dengan Data yang Hilang dan Lakukan Proses Imputation Misalkan kita memiliki dataset berupa data pelanggan dengan atribut seperti Usia , Pendapatan , Lokasi , dan Status Pekerjaan . Dataset ini mengandung nilai yang hilang (missing values) pada beberapa atribut . Contoh dataset:
Proses Imputation: Imputation adalah proses mengisi nilai yang hilang dengan nilai estimasi berdasarkan data yang ada . Beberapa metode imputation yang umum adalah : Imputasi dengan Mean/Median/Mode : Untuk atribut numerik seperti Usia dan Pendapatan , kita bisa mengisi nilai yang hilang dengan rata-rata (mean) atau median. Untuk atribut kategorikal seperti Status Pekerjaan , kita bisa mengisi nilai yang hilang dengan modus ( nilai yang paling sering muncul ). Langkah-langkah Imputation: Untuk kolom Usia , kita akan mengisi nilai yang hilang dengan rata-rata Usia . Untuk kolom Pendapatan , kita akan mengisi nilai yang hilang dengan rata-rata Pendapatan . Untuk kolom Status Pekerjaan , kita akan mengisi nilai yang hilang dengan modus ( nilai paling sering muncul ).
Langkah 2: Lakukan Normalisasi pada Dataset yang Memiliki Atribut Numerik dengan Rentang yang Berbeda Setelah melakukan imputation, kita memiliki beberapa atribut numerik yang memiliki rentang yang berbeda , seperti Usia ( misalnya antara 20 sampai 50) dan Pendapatan ( misalnya antara 3000 sampai 10000). Agar kedua atribut ini dapat dibandingkan secara adil , kita perlu melakukan normalisasi . Metode Normalisasi yang Digunakan : Kita akan menggunakan Min-Max Scaling untuk menormalkan data numerik . Normalisasi ini mengubah rentang data menjadi antara dan 1, dengan rumus sebagai berikut : Di mana : XnormX _{\text{norm}} Xnorm ​ adalah nilai yang sudah dinormalisasi . XXX adalah nilai asli ( misalnya , Usia atau Pendapatan ). XminX _{\text{min}} Xmin ​ adalah nilai minimum dari data. XmaxX _{\text{max}} Xmax ​ adalah nilai maksimum dari data.
Langkah-langkah Normalisasi : Untuk kolom Usia , kita akan mengubah rentang nilai menjadi [0, 1]. Untuk kolom Pendapatan , kita akan mengubah rentang nilai menjadi [0, 1 ]. Langkah 1: Normalisasi Kolom Usia Data Asli Kolom Usia : Usia Minimum ( XminX _{\text{min}} Xmin ​) : 25 Usia Maksimum ( XmaxX _{\text{max}} Xmax ​) : 35
Perhitungan Normalisasi Usia : Menggunakan rumus Min-Max, kita akan menghitung nilai normalisasi untuk setiap baris .
Hasil Normalisasi Kolom Usia :
Langkah 2: Normalisasi Kolom Pendapatan
Perhitungan Normalisasi Pendapatan : Menggunakan rumus Min-Max, kita akan menghitung nilai normalisasi untuk setiap baris .
Tabel Hasil Normalisasi Lengkap :
Langkah-langkah Implementasi PCA: Misalnya kita memiliki data setelah normalisasi seperti ini : Langkah 1: Matriks Data
Langkah 2: Hitung Matriks Kovarians
Langkah 3: Terapkan Teknik Pengurangan Dimensi ( Misalnya PCA) pada Dataset yang Memiliki Banyak Fitur Jika dataset kita memiliki banyak fitur , pengurangan dimensi bisa diterapkan untuk mengurangi kompleksitas dan meningkatkan efisiensi model. Salah satu teknik yang populer adalah Principal Component Analysis (PCA) . PCA adalah teknik untuk mengurangi dimensi dataset dengan memilih komponen utama yang menjelaskan sebagian besar variabilitas dalam data. Langkah-langkah PCA: Menstandarkan Data : Sebelum menerapkan PCA, kita harus menstandarkan data terlebih dahulu (mean = 0, standar deviasi = 1), jika data memiliki variabel dengan skala yang berbeda . Menghitung Matriks Kovarians : PCA mengandalkan matriks kovarians untuk melihat hubungan antar fitur . Menentukan Eigenvector dan Eigenvalue : PCA mencari eigenvector ( komponen utama ) dan eigenvalue (magnitude pentingnya komponen ). Memilih Komponen Utama : Komponen utama yang dipilih adalah yang memiliki eigenvalue terbesar , yang menjelaskan sebagian besar varians dalam data.
Langkah 3: Hitung Eigenvector dan Eigenvalue Langkah 4: Pilih Komponen Utama Setelah kita mendapatkan eigenvalue dan eigenvector, kita akan memilih komponen utama yang memiliki eigenvalue terbesar . Komponen utama dengan eigenvalue terbesar akan menjadi dimensi baru yang menjelaskan sebagian besar variansi dalam data. Biasanya , kita memilih jumlah komponen yang cukup untuk menjelaskan persentase tertentu dari variansi ( misalnya 95%).
Hasil Setelah PCA: Setelah mengurangi dimensi dengan PCA, kita mungkin memiliki data dengan satu kolom Komponen Utama yang menggantikan dua fitur awal :
Implementasi pada Phyton import numpy as np from sklearn.decomposition import PCA from sklearn.preprocessing import StandardScaler # Data yang telah dinormalisasi data = np.array ([ [0.0, 0.0], [0.45, 0.5], [0.5, 0.3125], [0.3, 1.0], [1.0, 0.25] ]) # Standarisasi data ( jika diperlukan ) scaler = StandardScaler () data_scaled = scaler.fit_transform (data) # Terapkan PCA pca = PCA( n_components =1) # Mengurangi ke 1 komponen utama principal_components = pca.fit_transform ( data_scaled ) # Menampilkan hasil print(" Komponen Utama :") print( principal_components ) # Menampilkan variansi yang dijelaskan oleh komponen utama print(" Variansi yang Dijelaskan :") print( pca.explained_variance_ratio _)
Penjelasan Kode : Data Input : Data yang telah dinormalisasi ( Usia dan Pendapatan ) dimasukkan dalam bentuk array NumPy . Standarisasi : Walaupun data kita sudah dinormalisasi , kita tetap menggunakan StandardScaler untuk memastikan data memiliki distribusi yang standar ( dengan rata-rata 0 dan deviasi standar 1). Biasanya ini dilakukan untuk dataset yang lebih besar atau jika data tidak sepenuhnya dinormalisasi . PCA : Kita kemudian menerapkan PCA dengan n_components =1 untuk mengurangi data menjadi satu komponen utama yang menjelaskan sebagian besar variansi dalam data. Output : Komponen Utama : Ini adalah hasil transformasi data ke dalam ruang komponen utama . Variansi yang Dijelaskan : Menunjukkan berapa banyak variansi data yang dijelaskan oleh komponen utama yang dipilih .
Komponen Utama : Hasil transformasi dari data yang telah dinormalisasi ke dalam ruang komponen utama . Setiap baris mewakili nilai dari komponen utama untuk setiap data point. Sebagai contoh , nilai [-1.16900688] untuk ID 1 menunjukkan seberapa besar data tersebut terproyeksi ke komponen utama pertama . Variansi yang Dijelaskan : 0.9517299 berarti bahwa komponen utama pertama yang dihasilkan oleh PCA menjelaskan sekitar 95.17% dari variansi data. Ini berarti komponen pertama menangkap sebagian besar informasi dari data, sehingga mengurangi dimensi data ke 1 komponen utama ini sudah cukup untuk mewakili data dengan sangat baik .
KESIMPULAN Dalam studi kasus ini , kita telah melakukan tiga langkah utama dalam data preprocessing : Imputation : Mengisi nilai yang hilang dengan metode yang sesuai (mean/median/modus) untuk memastikan data lengkap . Normalisasi : Menggunakan Min-Max Scaling untuk menormalkan data numerik dengan rentang yang berbeda , agar model dapat bekerja dengan data dalam skala yang seragam . Pengurangan Dimensi (PCA) : Mengurangi jumlah fitur yang digunakan dengan memilih komponen utama yang menjelaskan sebagian besar variabilitas dalam data, untuk menyederhanakan model dan mempercepat pelatihan . Dengan langkah-langkah ini , dataset kita siap untuk analisis lebih lanjut atau untuk digunakan dalam model machine learning yang lebih efisien .
TUGAS-02 Selesaiakan Project Kerja berikut : Sebuah perusahaan e-commerce ingin melakukan analisis terhadap pola pembelian produk oleh pelanggan di platform mereka . Untuk itu , mereka mengumpulkan data pelanggan yang mencakup informasi demografis dan transaksi pembelian . Data yang dikumpulkan , meskipun sangat berguna , memiliki beberapa masalah yang perlu diselesaikan sebelum dapat digunakan untuk membuat prediksi atau model analitik yang lebih akurat . Data yang diberikan mengandung kolom seperti : ID Pelanggan (unique identifier) Usia (numeric) Pendapatan (numeric) Jenis Kelamin ( kategori : Laki-laki , Perempuan ) Status Pernikahan ( kategori : Menikah , Belum Menikah ) Jumlah Pembelian (numeric) Produk Terakhir Dibeli ( kategori : Elektronik , Pakaian , Kecantikan , dll .) Tanggal Pembelian Terakhir ( datetime ) Metode Pembayaran ( kategori : Kartu Kredit , Transfer Bank, E-Wallet)
Tugas yang Harus Dikerjakan : 1. Pengecekan dan Penanganan Data yang Hilang : Identifikasi kolom mana saja yang memiliki nilai yang hilang dan tentukan cara untuk menangani data hilang tersebut ( apakah dengan menghapus baris , mengganti dengan nilai rata-rata, atau metode imputasi lainnya ).
2. Pengecekan dan Perbaikan Tipe Data: Cek tipe data pada setiap kolom , terutama kolom " Tanggal Pembelian Terakhir ". Ubah tipe data menjadi datetime jika diperlukan . 3. Normalisasi atau Standarisasi Data: Kolom " Usia " dan " Pendapatan " memiliki skala yang berbeda . Terapkan normalisasi ( misalnya Min-Max scaling) atau standarisasi (Z-score scaling) untuk memastikan model tidak terbiasa pada satu skala . 4. Encode Data Kategorikal : Ubah kolom yang berisi data kategorikal seperti " Jenis Kelamin ", "Status Pernikahan ", " Produk Terakhir Dibeli ", dan " Metode Pembayaran " menjadi format numerik agar dapat digunakan dalam model machine learning. Anda bisa menggunakan teknik one-hot encoding atau label encoding. 4. Pengecekan Outliers pada Kolom Numerik : Cek kolom numerik seperti " Jumlah Pembelian " untuk mendeteksi outliers ( nilai yang sangat berbeda dari yang lain) dan tentukan apakah outliers tersebut perlu dihapus atau diubah . 5. Visualisasi Data Setelah Preprocessing: Setelah melakukan preprocessing, visualisasikan distribusi data numerik seperti usia , pendapatan , dan jumlah pembelian . Tampilkan diagram batang atau pie chart untuk menunjukkan distribusi data kategorikal setelah dilakukan encoding .
6 . Tulis Laporan Analisis : Jelaskan langkah-langkah yang Anda lakukan selama proses preprocessing, termasuk metode yang digunakan untuk menangani nilai yang hilang , normalisasi data, dan encoding kategorikal . Sebutkan apakah ada tantangan yang dihadapi dalam proses preprocessing dan bagaimana cara Anda mengatasinya . Berikan rekomendasi langkah-langkah selanjutnya yang dapat dilakukan dengan data yang telah diproses , misalnya pembuatan model prediksi pembelian produk . 7. Dikumpulkan , Pada pertemuan berikutnya di Rabu tanggal 5 Maret 2025, ditulis tangan dikertas double folio. Dengan keterangan Nama , Nim , MK, Kelas dan TUGAS-02.