Analisis Gerombol


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 Pengklasteran

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.

Ilustrasi

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.

Ilustrasi

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.