Analisis gerombol (cluster) merupakan teknik peubah ganda (multivariate) yang tujuan utmanya untuk mengelompokkan objekobjek berdasarkan kemiripan karakteristik yang dimilikinya. Karakteristik objek dalam suatu gerombol memiliki kemiripan yang tinggi, sedangkan karakteristik antar objek pada suatu gerombol dengan objek pada gerombol lainnya memiliki tingkat kemiripan yang rendah.
Asumsi yang harus dipenuhi
1) Sampel yang diambil harus benar-benar bisa mewakili populasi.
2) Multikolinieritas yaitu korelasi antar obyek. Sebaiknya tidak ada, bila ada maka besar multikolinieritas tidaklah tinggi (< 0.5).
Ukuran kemiripan dan ketakmiripan
Ukuran ketakmiripkan antara dua objek \(a\) dan \(b\) dinotasikan \(d(a,b)\):
a. \(d(a,b) \ge 0\)
b. \(d(a,a) = 0\)
c. \(d(a,b) = d(b,a)\)
d. \(d(a,b)\) meningkat seiring semakin tidak mirip kedua objek \(a\) dan \(b\)
e. \(d(a,b) \le d(a,b) + d(b,c)\)
Asumsi: semua pengukuran bersifat numerik.
Metode Hirarki
Ada dua cara mendapatkan gerombolan dengan menggunakan metode gerombolan hirarki yaitu dengan cara penggabungan (aglomerative) dan pemisahan gerombol (devisive). Metode hirarki dengan cara penggabungan didapat dengan menggabungkan pengamatan atau gerombol secara bertahap, sehingga pada akhirnya didapat hanya satu gerombol gerombol saja. Sebaliknya, cara pemisahan pada metode hirarki dimulai dengan membentuk satu gerombol besar beranggotakan seluruh pengamatan. Gerombol besar tersebut kemudian dipisah menjadi gerombol yang lebih kecil, sampai satu gerombol hanya beranggotakan satu pengamatan saja.
Import Data
datagerombol <- read.csv("D:/Praktikum/ADE/ADE4.csv")
head(datagerombol)
## Wilayah Indeks.Pembangunan.Manusia.2020 Indeks.Keparahan.Kemiskinan
## 1 Bengkulu Selatan 70.63 0.82
## 2 Rejang Lebong 70.44 0.35
## 3 Bengkulu Utara 68.82 0.37
## 4 Kaur 66.99 0.63
## 5 Seluma 66.89 0.70
## 6 Mukomuko 68.45 0.38
Menghitung Jarak
jarak=dist(datagerombol[,2])
Membuat Single Linkage
hierarki <- hclust(dist(scale(datagerombol[,2])),
method="single")
Dendogram
plot(hierarki, labels = datagerombol$Wilayah)
rect.hclust(hierarki,2)
Mengelompokkan Data
anggota<-data.frame(Wilayah=datagerombol$Wilayah, cutree(hierarki,k=2))
anggota
## Wilayah cutree.hierarki..k...2.
## 1 Bengkulu Selatan 1
## 2 Rejang Lebong 1
## 3 Bengkulu Utara 1
## 4 Kaur 1
## 5 Seluma 1
## 6 Mukomuko 1
## 7 Lebong 1
## 8 Kepahiang 1
## 9 Bengkulu Tengah 1
## 10 Kota Bengkulu 2
Didapata bahwasanya dari hasil clustering menggunakan metode single linkage, cluster yang didapat berjumlah 2 cluster.
Metode Non-Hirarki
Pada metode ini terlebih dahulu harus ditentukan jumlah cluster yang diinginkan dan centroid tiap cluster. Kemudian dihitung jarak untuk setiap objek ke centroid, lalu masukkan objek ke dalam cluster yang memiliki jarak terdekat dengan centroid cluster yang berpadanan. Hitung kembali tiap centroid yang terbentuk, ulangi step sampai tidak terdapat objek yang berpindah antar cluster. Metode ini biasanya dinamakan dengan k-mean.
Input Data
datagerombol <- read.csv("D:/Praktikum/ADE/ADE4.csv")
head(datagerombol)
## Wilayah Indeks.Pembangunan.Manusia.2020 Indeks.Keparahan.Kemiskinan
## 1 Bengkulu Selatan 70.63 0.82
## 2 Rejang Lebong 70.44 0.35
## 3 Bengkulu Utara 68.82 0.37
## 4 Kaur 66.99 0.63
## 5 Seluma 66.89 0.70
## 6 Mukomuko 68.45 0.38
Kmeans
library(factoextra)
## Loading required package: ggplot2
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
nonhicluster <- kmeans(datagerombol[,2:3],2)
fviz_cluster(nonhicluster, data = datagerombol[,2:3])
Didapat bahwasanya dari hasil clustering menggunakan metode kmeans juga menghasilkan hasil yang sama dengan clustering menggunakan metode single linkage, cluster yang didapat berjumlah 2 cluster.