7.2 Eksperimen Algoritma K-Modes
1. Memuat library yang diperlukan
Algoritma k-modes adalah salah satu metode clustering yang dirancang khusus untuk menangani data kategorikal. Di R, algoritma ini dapat diimplementasikan dengan menggunakan library Klar
, yang menyediakan fungsi bawaan untuk k-modes. Selain itu, library MASS
sering digunakan untuk mendukung manipulasi data atau keperluan lainnya dalam analisis clustering.
2. Persiapan Dataset
Package readr menyiapkan fungsi read_csv()
untuk import data dari file CSV. Pada kasus ini digunakan data Daerah Aliran Sungai (DAS).
library (readr)
urlfile = "https://raw.githubusercontent.com/dedenistiawan/Dataset/main/Dataset%20DAS.csv"
data<-read_csv(url(urlfile))
PRODUKTIVITAS | KEMIRINGAN LERENG | TINGKAT EROSI | MANAJEMEN LAHAN |
---|---|---|---|
Sangat Tinggi | Datar | Berat | Baik |
Sangat Tinggi | Datar | Sangat Berat | Baik |
Sangat Rendah | Datar | Sedang | Buruk |
Sangat Rendah | Datar | Sedang | Buruk |
Sangat Tinggi | Datar | Sedang | Baik |
Sangat Tinggi | Datar | Sedang | Baik |
Sangat Tinggi | Datar | Sedang | Baik |
Sangat Rendah | Datar | Sedang | Buruk |
Sangat Tinggi | Datar | Sedang | Baik |
Sangat Tinggi | Datar | Sedang | Baik |
3. Memeriksa Missing value
Untuk memeriksa keberadaan missing value dalam dataset, kita dapat menggunakan fungsi is.na()
yang mengidentifikasi elemen dengan nilai yang hilang (NA). Dalam kasus ini, perintah colSums(is.na(data))
digunakan untuk menghitung jumlah nilai yang hilang pada setiap kolom dalam dataset. Fungsi is.na(data)
menghasilkan matriks logika yang menunjukkan posisi nilai yang hilang, di mana nilai TRUE
menandakan keberadaan missing value. Selanjutnya, colSums()
menjumlahkan nilai TRUE
tersebut untuk setiap kolom, sehingga memberikan informasi tentang jumlah nilai yang hilang per kolom. Dengan hasil ini, pengguna dapat dengan mudah mengidentifikasi kolom yang memerlukan penanganan lebih lanjut, seperti imputasi atau penghapusan data.
3. Menjalankan K-Modes
Proses diawali dengan menjalankan fungsi kmodes()
, di mana dataset dibagi ke dalam 3 cluster dengan parameter iterasi maksimum sebesar 10 dan tanpa pembobotan (parameter weighted = FALSE
). Hasil clustering disimpan dalam variabel cluster.results
, yang mencakup informasi tentang mode dari setiap cluster dan label cluster untuk setiap baris data. Selanjutnya, hasil cluster tersebut ditambahkan sebagai kolom baru ke dataset asli menggunakan fungsi cbind()
, menghasilkan data frame baru yang mencakup informasi label cluster untuk setiap data. Dengan demikian, dataset hasil clustering ini dapat digunakan untuk analisis lebih lanjut, seperti mengidentifikasi pola atau karakteristik di dalam setiap cluster.
4. Menyimpan Hasil Cluster
Fungsi write.csv()
digunakan untuk mengekspor data frame cluster.output
, yang berisi dataset asli beserta label cluster hasil algoritma k-modes, ke file bernama “kmodes clusters.csv”. Parameter row.names = TRUE
memastikan bahwa nama baris dari data frame akan disertakan dalam file CSV yang dihasilkan. File ini disimpan di direktori kerja R saat ini dan dapat diakses menggunakan perangkat lunak spreadsheet seperti Microsoft Excel atau diimpor kembali ke R untuk analisis lebih lanjut.