Analisis Kluster Hirarki( Ward’s Method) Menggunakan R Studio

FIRDA RAHMATUL UMMAH
5 min readJul 23, 2021

--

Assalamualaikum Wr.Wb

Hay,,,, kawan-kawan data enthusiast semuanya, di waktu kali ini aku mau berbagi sedikit ilmu nih mengenai Algoritma Data Mining yaitu Clustering. clustering merupakan pengelompokkan data dengan menggunakan karakterisik yang sama pada suatu wilayah yang sama dan pada karakteristik yang berbeda ke wilayah lainnya yang berbeda. Dalam clustering ini biasanya dilakukan suatu analsis yaitu analisis kluster. Analisis kluster itu apa aja sih?? yok belajar bareng-bareng disini!!!

Disini saya akan jelaskan sedikit mengenai apa itu analisis kluster. Analisis kluster merupakan suatu teknik peubah ganda yang mempunyai tujuan utama untuk mengelompokkan objek-objek berdasarkan kemiripan karakter yang dimiliki. Terdapat macam-macam analisis kluster salah satunya yaitu analisis kluster hirarki. Analisis cluster hirarki merupakan pengelompokkan data dengan pembuatan suatu hirarki pada dendogram dimana jika data tersebut mirip maka kan di kelompokkan pada hirarki yang berdekatan dan yang tidak maka akan di kelompokkan pada hirarki yang berjauhan. Pada analisis hirarki ini terdapat metode yang biasa digunakan.

Nahh metode apa saja yang biasa digunakan pada analisis kluster hirarki??? Metode nya yaitu: Metode Ward, Metode Complete Linkage, Metode Average Linkage, Metode Single Linkage, dan Metode Centroid

Yukkk langsung kita praktikkan saja!!

Untuk melakukan analisis kluster hirarki disini saya menggunaka data ternak pada Provinsi Jawa Tengah di tahun 2019 yang di ambil dari bps klik link disini. Nah data ini saya lakukan analisis untuk mengetahui wilayah mana saja yang dapat menghasilkan ternak yang dapat digunakan untuk berkurban. Seperti pada waktu ini hewan ternak banyak dicari terutama untuk berkurban. Banyak masyarakat yang mencari referensi wilayah mana saja yang dapat menghasilkan hewan ternak yang baik. Sehingga untuk mengetahui hal tersebut maka akan dilakukan analisis cluster hirarki.

Berikut tampilan data yang diambil dari hewan ternak di Jawa Tengah Tahun 2019

Data ternak

Berdasarkan data diatas terdapat 35 Kabupaten yang ada di Provinsi Jawa Tengah dengan variabel yang digunakan yaitu Kabupaten, Kerbau, Domba, Kambing, dan Sapi

Mari kita langusung masukkan data ke dalam R studio dengan menggunakan syntax sebagai berikut

#Input data ternak 
ternak<-read.delim("clipboard")

Syntax read.delim biasa digunakan untuk memasukkan data ke dalam R studio dengan cara meng-copy data yang ada di microsoft excel kemudian melakukan running di R studio.

Selanjutnya yaitu melihat analisis deskriptif dengan menggunakan syntax berikut ini

#analisis deskriptif
summary(ternak)

Didapatkan hasil sebagai berikut :

Analisis deskriptif

Berdasarkan hasil output tersebut terdapat nilai minimal, quartil 1, median, mean, quartil 3 dan nilai maksimal untuk setiap variabel kerbau, domba, kambing, dan sapi. Sedangkan pada variabel kabupaten terdapat tipe data yaitu berupa karakter.

Kemudian kita akan memanggil dan meng-install package yang digunakan untuk uji multikoliniaritas. Berikut syntax yang digunakan

install.packages("car")
install.packages("ggpubr")
install.packages("factoextra")
library(car)
library(ggpubr)
library(factoextra)
attach(ternak)

Selanjutnya akan dilakukan uji multikolinieritas. Pada analisis kluster hirarki terdapat asumsi yang harus terpenuhi yaitu asumsi multikolinieritas pada uji asumsi ini terpenuhi jika nilai VIF yang diperoleh harus kurang dari sama dengan 10 agar tidak terjadi multikolinieritas. Sehingga berikut syntax yang digunakan

#Uji multikolinieritas kerbau dengan variabel lainnya
multiko1=vif(lm(Kerbau~Domba+Kambing+Sapi))
multiko1
# uji multikolinieritas Domba dengan variabel lainnya
multiko2=vif(lm(Domba~Kerbau+Kambing+Sapi))
multiko2
#uji multikolinieritas Kambing dengan variabel lainnya
multiko3=vif(lm(Kambing~Kerbau+Domba+Sapi))
multiko3
#uji multikolinieritas Sapi dengan variabel lainnya
multiko4=vif(lm(Sapi~Domba+Kambing+Kerbau))
multiko4
#Uji Multiko dengan melihat matriks korelasi
korelasi=cor(ternak[,2:5])
View(korelasi)

Berikut merupakan output dari uji asumsi multikoliniearitas

Berdasarkan output didapatkan semua nilai VIF untuk masing-masing variabel memiliki nilai yang kurang dari sama dengan 10. Sehingga berdasarkan nilai VIF tersebut maka semua varibel tidak terjadi multikoliniaritas.

Selanjutnya yaitu mencari nilai cluster optimum , cara yang digunakan dengan metode elbow. Berikut syntax yang digunakan

ternak_1=ternak[,2:5]
fviz_nbclust(ternak_1,hcut, method="wss")
fviz_nb

Berdasarkan hasil plot diatas terlihat bahwa kluster optimum berada pada angka 5. Hal tersebut ditunjukkan karena pada angka tersebut garis pada plot mulai landai. Sehingga akan dibentuk kelompok ternak yaitu sangat tinggi, tinggi, sedang, rendah, sangat rendah.

Kemudian akan dilakukan analisis kluster dengan menggunakan metode ward. Berikut syntax yang digunakan:

#metode ward 
metode_ward=hclust(dist(scale(ternak_1)), method="ward.D")
plot(metode_ward,labels=ternak$Kabupaten...Kota)

Berikut hasil kluster ternak tiap kabupaten di Jawa Tengah dengan dendogram

Berdasarkan hasil output dendogram didapatkan 35 kabupaten yang sudah dikelompokkan menjadi lima. Sehingga untuk mengetahui anggota dari setiap kelompok atau kluster dapat menggunakan syntax sebagai berikut :

anggota<-cutree(metode_ward,3) 
tabel=data.frame(ternak,anggota)
table(anggota)

Sehingga output sebagai berikut :

Berdasarkan output diatas didapatkan pada kluster 1 terdapat 6 kabupaten, kluster 2 terdapat13 kabupaten, kluster 3 terdapat 6 kabupaten, kluster 4 terdapat 5 kabupaten, dan kluster 5 terdapat 5 kabupaten.

Selanjutnya akan dilihat hasil kluster dari semua variabel. Berikut syntax yang digunakan

anggota<-cutree(metode_ward,5) 
tabel=data.frame(ternak,anggota)
tabel

Beriku output yang digunakan:

Kemudian akan dilakukan profilisasi dengan menyimpan data dari r studio ke dalam bentuk excel. Berikut syntax yang digunakan

write.csv(tabel, file="C:\\Users\\ACER\\Downloads\\PRAK.SMT\\DATMIN1.csv")

Sehingga hasil profilisasi sebagai berikut :

Berdasarkan hasil profilisasi didapatkan untuk warna orange merupakan populasi sangat tinggi, warna kuning mrupakan populasi tinggi, warna hijau muda merupakan populasi ternak sedang, warna hijau merupakan populasi rendah, dan warna biru merupakan populasi sangat rendah. Berikut hasil profilisasi:

  1. Pada cluster pertama terdapat kota Purbalingga, Purwokerto, Cilacap Banyumas, dan Wonosobo. Berdasarkan cluster 1 terdapat populasi tinggi pada kambing, populasi ternak rendah untuk domba, dan rendah untuk populasi kerbau;sapi
  2. Pada cluster kedua terdapat kabupaten Karanganyar, Sragen, Boyolali, Klaten, Demak, Jepara, Pekalongan, Kota semarang, Kendal, kebumen, kudus, Sukoharjo, dan Batang. pada cluster kedua terdapat populasi tinggi pada ksapi, populasi ternak rendah untuk kerbau, dan rendah untuk populasi domba;kambing
  3. Pada cluster ketiga terdapat kabupaten :Temanggung, Semarang, Tegal, Pemalang, Magelang, Brebes, pada kluster ini didominasi untuk populasi ternak tinggi (Kerbau dan domba), dan sedang untuk popilasi kambing dan sapi
  4. Pada cluster ke empat terdapat kabupaten: Grobogan, Blora, Wonogiri, Rembang dan Pati . Pada cluster ini termasuk penghasil ternak dengan populasi yang sangat tinggi (kambing ;sapi )dan tinggi untuk (kerbau; domba)
  5. Pada cluster ke lima terdapat kota : magelang,Surakarta, Tegal, Salatiga, dan pekalongan, pada cluster lima ini populasi penghasil ternak sangat rendah untuk semua ternak(kambing, kerbau, sapi dan domba)

Terimakasihhh kawan-kawan ,,,, sekian dulu ya yang bisa saya sampaikan, semoga ilmu sedikit ini dapat memberikan berkah dan manfaat.

Semangatt dan terus belajar sama-sama yaa

wassalamualaikum Wr.Wb

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

No responses yet

Write a response