K-Means adalah salah satu algoritma clustering / pengelompokan data yang bersifat Unsupervised Learning, yang berarti masukan dari algoritma ini menerima data tanpa label kelas. Tujuan dari metode unsupervised learning salah satunya adalah melakukan clustering, yaitu mengelompokkan data-data dengan karakter mirip.
Tujuan dari k-means sendiri membagi suatu data dalam beberapa cluster (kelompok) sebanyak k, yang dimana jumlah k-nya ditentukan oleh peneliti dan diwakili oleh Mean (Rata-rata). Mean dari setiap cluster diasumsikan sebagai ringkasan yang baik dari setiap observasi dari cluster tersebut. Karakteristik dari algoritma ini adalah :
Memiliki n buah data
Input berupa jumlah data dan jumlah cluster (kelompok)
Pada setiap cluster / kelompok memiliki sebuah centroid yang mempresentasikan cluster tersebut.
Data yang digunakan untuk menerapan k-means adalah data Kemiskinan berdasarkan Dimensi Kualitas Kesehatan dan Kualitas Ekonomi di Jawa Tengah Tahun 2015.
Data tersebut terdiri dari 6 aspek pengukuran sebagai berikut :
X1 (presentase tumah tangga miskin yang luas lantai
bangunan tempat tinggalnya kurang dari 32 m2),
X2 (Presentase rumah tangga miskin yang jenis lantai
bangunan tempat tinggalnya terbuat dari tanah/kayu berkualitas rendah
per kecamatan),
X3 (Presentase rumah tangga miskin yang sumber air
minumnya berasal dari sumur/mata air tidak terlindung/sungai per
kecamatan),
X4 (Presentase rumah tangga miskin yang tidak
mempunyai jenis atap dari genteng per kecamatan),
X5 (Presentase rumah tangga miskin yang tidak
sanggup membayar biaya pengobatan di puskesmas per kecamatan),
X6 (Presentase rumah tangga miskin yang menggunakan
bahan bakar untuk memasak sehari-hari adalah kayu bakar per
kecamatan).
## X1 X2 X3 X4 X5 X6
## 108.042602 383.343478 260.985591 0.672209 3.989998 91.822238
Berdasarkan output tersebut, keenam variabel memiliki rentang variansi yang sangat besar. Untuk itu, perlu dilakukan proses standarisasi data. Proses standarisasi dilakukan apabila diantara variabel-variabel yang diteliti terdapat perbedaan ukuran satuan yang besar. Perbedaan satuan yang mencolok dapat mengakibatkan perhitungan pada analisis cluster menjadi tidak valid.
## X1 X2 X3 X4 X5 X6
## 0.07597697 0.09471107 0.07013856 0.09429351 0.09187595 0.06624633
Hasil di atas merupakan variansi data yang sudah di standarisasi. Variansi dari setiap variabel sudah memiliki rentang yang tidak besar. Setelah dilakukan standarisasi, maka dapat dilanjutkan dengan melakukan proses analisis K-Means Clustering.
Dalam menentukan jumlah cluster yang optimal pada
K-Means, maka akan menggunakan metode Elbow dan
Silhoutte.
Metode Elbow merupakan suatu metode yang digunakan untuk menghasilkan informasi dalam menentukan jumlah cluster terbaik dengan cara melihat persentase hasil perbandingan antara jumlah cluster yang akan membentuk siku pada suatu titik. Sedangkan metode silhoutte untuk menduga kualitas dari klaster yang terbentuk. Semakin tinggi nilai rata-ratanya maka cluster yang akan dibentuk semakin baik.
## Loading required package: ggplot2
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
Dengan menggunakan kedua metode ini diperoleh k optimal
pada saat berada di k = 4. Akan tetapi, disini akan hanya
menggunakan pengelompokkan wilayah sebanyak 3 kelompok.
Pengelompokan Kabupaten/Kota di Provinsi Jawa Tengah berdasarkan kemiskinan menurut dimensi kualitas kesehatan dan kualitas ekonomi dibagi ke dalam 3 kelompok.
## K-means clustering with 3 clusters of sizes 17, 3, 11
##
## Cluster means:
## X1 X2 X3 X4 X5 X6
## 1 0.6752617 0.4416018 0.7742527 0.4615554 0.49941980 1.515429
## 2 0.8602493 1.0664885 1.0251366 0.2172285 0.06828528 1.862118
## 3 1.1267809 0.6197737 1.1402385 0.7378277 0.52338254 1.356116
##
## Clustering vector:
## [1] 3 3 3 1 1 1 1 3 3 3 1 1 3 1 1 1 1 3 1 1 1 3 1 3 1 1 1 2 3 2 2
##
## Within cluster sum of squares by cluster:
## [1] 4.6874782 0.6915699 4.0842544
## (between_SS / total_SS = 36.0 %)
##
## Available components:
##
## [1] "cluster" "centers" "totss" "withinss" "tot.withinss"
## [6] "betweenss" "size" "iter" "ifault"
Pada kelompok 1 memiliki 11 anggota atau kabupaten, kelompok 2
memiliki 17 anggota kabupaten, sedangkan sisanya yaitu 3 kabupaten masuk
ke dalam kelompok 3. Untuk jumlah kuadrat dari setiap klasternya dapat
dilihat pada within cluster sum of squares by cluster yaitu
sebesar 4.0842544, 4.6874782, dan 0.6915699. Adapun nilai jarak dekatnya
atau jarak antar satu cluster yang sama (between SS)
sebesar 36.0%. Adapun anggota kelompok dari masing-masing
cluster bisa dilihat di Clustering Vector.
Visualisasi dari kabupaten yang terbentuk di setiap kelompok adalah sebagai berikut:
Kabupaten yang termasuk dalam kelompok 1 merupakan Kabupaten Cilacap, Banyumas, Purbalingga, Magelang, Boyolali, Klaten, Karanganyar, Pati, Semarang, Kendal, dan Brebes. Sedangkan kelompok 2 dan 3 bisa dilihat dalam output diatas.