Anda di halaman 1dari 13

MODUL PRAKTIKUM DATA MINING PERTEMUAN 3 – DATA PREPROCESSING

Tools : Google Colab


Bahasa Pemrograman : Python

Pada praktikum ke-2 kita sudah mempelajari mengenai data preprocessing, dimana
tujuannya adalah mempersiapkan proses data mining dengan mengubah data mentah ke dalam
bentuk yang lebih mudah dipahami. Pada modul praktikum 2 sudah kita pelajari mengenai data
profiling dan data cleaning. Pada modul praktikum 3 ini kita akan melanjutkan fase data
preprocessing yaitu data transformation dan data reduction.

1. Data Transformation
Data transformation merupakan tahapan mengubah data ke dalam bentuk yang sesuai dan
dibutuhkan pada proses data mining. Ada beberapa cara untuk melakukan data transformation
adalah normalization,discretization dan pemilihan attribute. Untuk pemilihan fitur (feature
selection) akan dibahas pada praktikum berikutnya. Data Normalization diterapkan dengan
menskalakan nilai data dalam rentang nilai tertentu, misalnya -1 sampai 1 atau 0 sampai 1.
Sedangkan discretization mengganti nilai data pada atribut numerik dengan nilai interval.

a. Data Normalization
Ada beberapa metode untuk normalisasi data, yaitu :
1) Min-max Normalization
Min-max normalization memetakan sebuah value v dari atribut A menjadi v' ke dalam range
[new_minA, new_maxA]. Metode ini melakukan transformasi linier terhadap data asli sehingga
menghasilkan keseimbangan nilai perbandingan antar data saat sebelum dan sesudah proses,
dimana data minimal menjadi 0 dan data maksimal menjadi 1. Rumusnya sebagai berikut

2) Z-Score Normalization
Z-Score Normalization menormalisasikan value dari sebuah atribut A berdasarkan nilai rata-rata
dan standar deviasi dari atribut, cara ini disebut juga zero-mean normalization. Metode ini
sangat berguna jika tidak diketahui nilai aktual minimum dan maksimum dari data. Rumusnya:

3) Decimal Scaling
Normalisasi yang diperoleh dengan melakukan pergeseran titik desimal dari value sebuah
atribut A. Jumlah titik desimal yang digeser tergantung dari nilai absolut maksimum atribut A.
Rumusnya sebagai berikut:
Tahap awal adalah menuliskan library yang dibutuhkan, dataset yang digunakan, lalu
mengetahui info dan deskripsi dari dataset yang digunakan.
Berikut ini penerapan normalisasi data di python
1) Min-max Normalization

Atau bisa menggunakan library from sklearn.preprocessing import MinMaxScaler

2) Z-Score Normalization
Atau bisa menggunakan library from sklearn.preprocessing import
StandardScaler

3) Decimal Scaling
b. Discretization
Teknik diskritisasi mereduksi sekumpulan nilai yang terdapat pada atribut kontinu,
dengan membagi range dari atribut ke dalam interval. Ada beberapa teknik, yaitu :
1) Label Encoding
Label Encoding dilakukan untuk mengonversi label (data kategorikal) ke dalam bentuk
numerik (angka) agar dapat diproses oleh metode data mining.

Atau menggunakan from sklearn.preprocessing import LabelEncoder


2) One-Hot Encoding
OneHotEncoder dilakukan untuk membuat kolom baru untuk setiap nilai kategorikal
yang unik, dan nilainya adalah 1 untuk kolom itu, jika dalam bingkai data aktual nilai itu
ada, selain itu adalah 0. One Hot Encoding bisa dilakukan dengan 2 cara yaitu melalui
Library Scikit-Learn atau dengan method Get Dummies dari pandas.
Berikut menggunakan from sklearn.preprocessing import OneHotEncoder
Berikut menggunakan method Get Dummies dari pandas

3) Binary Encoding
Binary Encoding digunakan untuk mengubah data kategorik menjadi numerik dengan
enkoder ordinal lalu diubah menjadi bilangan biner, lalu dibagi menjadi kolom berbeda.
Berikut ini percobaan menggunakan kolom Age pada dataset titanic
2. Data Reduction
Data reduction dilakukan jika data yang digunakan sangat besar dan memerlukan efisiensi
penyimpanan data dan mengurangi waktu analisis data.Tekniknya dibagi menjadi dua,
dimensionality reduction (reduksi dimensi) dan numerosity reduction (reduksi jumlah).

Dimensionality Reduction adalah proses pengurangan jumlah dimensi data yang tersebar. Ini
berarti, atribut atau fitur, yang dibawa oleh kumpulan data saat jumlah dimensi meningkatkan
sparity. Ketersebaran data ini sangat penting untuk pengelompokan, analisis outlier dan
algoritma lainnya. Dengan pengurangan dimensi, maka akan lebih mudah untuk
memvisualisasikan dan memanipulasi data.
Dalam pengurangan Numerositas, volume data dikurangi dengan memilih alternatif, bentuk
representasi data yang lebih kecil. Teknik-teknik ini mungkin parametrik atau nonparametrik.
Untuk metode parametrik, model digunakan untuk memperkirakan data, sehingga hanya
parameter data yang perlu disimpan, bukan data aktual, misalnya model Log-linear. Metode
non-parametrik digunakan untuk menyimpan representasi data yang dikurangi yang meliputi
histogram, pengelompokan, dan pengambilan sampel.

a. Dimensionality Reduction
Reduksi dimensi bisa menggunakan algoritma PCA. Principal Component Analysis
(PCA) adalah metode statistik yang menciptakan fitur/karakteristik data baru dengan
menganalisis karakteristik dataset. Pada dasarnya, karakteristik data digabungkan
bersama.
b. Numerosity Reduction
Numerosity Reduction mengganti data asli dengan bentuk representasi data yang lebih kecil
untuk mencapai pengurangan volume. Dua jenis metode,yaitu:
i) Parametrik: Metode ini melibatkan model regresi dan log-linear, yang parameternya perlu
disimpan alih-alih data aktual.
ii) Nonparametrik. Metode nonparametrik melibatkan penyimpanan data dalam representasi
seperti histogram, cluster, sampel yang lebih kecil dari dataset asli, atau agregasi kubus data.

Referensi:
https://algorit.ma/blog/data-preprocessing-adalah/
https://analyticsindiamag.com/a-complete-guide-to-categorical-data-encoding/
https://machinelearningmastery.com/dimensionality-reduction-algorithms-with-python/
https://medium.com/@adiptamartulandi/data-preprocessing-pada-machine-learning-handling-categorical-data-ucupst
ory-6e409dbfd0a0
https://medium.com/codex/data-normalization-techniques-4148b69876b0
https://medium.com/data-science-indo/data-preparation-in-python-for-beginner-d3e1e60c03a6
https://stackabuse.com/dimensionality-reduction-in-python-with-scikit-learn/
https://towardsdatascience.com/preprocessing-with-sklearn-a-complete-and-comprehensive-guide-670cb98fcfb9
https://www.dqlab.id/langkah-awal-dalam-pemrosesan-data-dalam-data-mining
https://www.geeksforgeeks.org/data-normalization-in-data-mining/?ref=gcse
https://www.geeksforgeeks.org/data-pre-processing-wit-sklearn-using-standard-and-minmax-scaler/
https://www.geeksforgeeks.org/data-reduction-in-data-mining/
https://www.geeksforgeeks.org/difference-between-dimensionality-reduction-and-numerosity-reduction/
https://www.geeksforgeeks.org/ml-label-encoding-of-datasets-in-python/
https://www.geeksforgeeks.org/python-scaling-numbers-column-by-column-with-pandas/
https://www.jigsawacademy.com/blogs/data-science/data-reduction
https://www.kaggle.com/code/parasjindal96/how-to-normalize-dataframe-pandas/notebook
https://www.kaggle.com/datasets/uciml/mushroom-classification
https://www.kdnuggets.com/2020/04/data-transformation-standardization-normalization.html
https://www.kdnuggets.com/2020/07/easy-guide-data-preprocessing-python.html
https://www.tutorialspoint.com/what-is-numerosity-reduction
Junaedi, H., Budianto, H., Maryati, I., & Melani, Y. (2011). Data transformation pada data mining. Prosiding
Konferensi Nasional Inovasi dalam Desain dan Teknologi-IDeaTech, 7(3), 93-99.
https://ideatech.istts.ac.id/proceeding2011/12-000113_INF%20Hartarto%20p93-99.pdf
Nasution, D. A., Khotimah, H. H., & Chamidah, N. (2019). Perbandingan Normalisasi Data untuk Klasifikasi Wine
Menggunakan Algoritma K-NN. CESS (Journal of Computer Engineering, System and Science), 4(1), 78-82.
https://jurnal.unimed.ac.id/2012/index.php/cess/article/view/11458
https://www.datacamp.com/cheat-sheet/scikit-learn-cheat-sheet-python-machine-learning

Anda mungkin juga menyukai