1 PENDAHULUAN
1.1 Latar Belakang
Gaya hidup sehat merupakan salah satu faktor penting dalam meningkatkan kualitas hidup masyarakat di berbagai kota di dunia. Berbagai penelitian menunjukkan bahwa gaya hidup sehat berhubungan langsung dengan kesehatan fisik dan mental, serta kesejahteraan sosial. Setiap kota di dunia memiliki kondisi sosial, ekonomi, dan lingkungan yang berbeda, yang memengaruhi bagaimana penduduknya menjalani gaya hidup sehat. Pada tahun 2021, banyak kota menghadapi tantangan besar dalam mempromosikan gaya hidup sehat, terutama akibat dampak pandemi COVID-19 yang mengubah cara hidup masyarakat, baik dalam hal mobilitas, akses ke fasilitas kesehatan, hingga pola konsumsi. Berbagai inisiatif pemerintah dan organisasi internasional mulai berfokus pada pengembangan kebijakan untuk mendorong gaya hidup sehat, namun hasilnya mungkin bervariasi antar kota.
Analisis Cluster merupakan salah satu metode statistika yang dapat digunakan untuk melakukan proses pengelompokan objek-objek, sehingga setiap objek yang paling dekat kesamaannya dengan objek lain berada dalam cluster yang sama (Gabriella & Yonlib, 2020). Dalam hal ini, analisis cluster menjadi metode yang tepat untuk mengelompokkan kota-kota berdasarkan indikator gaya hidup sehat. Pendekatan ini memungkinkan identifikasi pola berdasarkan data, sehingga menghasilkan kelompok-kelompok kota dengan karakteristik serupa. Pengelompokan ini tidak hanya memberikan wawasan tentang kondisi kesehatan global, tetapi juga membantu pembuat kebijakan untuk merencanakan dan melaksanakan program-program yang lebih terfokus dalam meningkatkan kualitas hidup di kota-kota tersebut.
1.2 Rumusan Masalah
Rumusan masalah dalam analisis ini adalah sebagai berikut:
Bagaimana cluster terbentuk dari 44 Kota di dunia pada tahun 2021 berdasarkan indikator gaya hidup sehat?
Apa saja karakteristik yang dimiliki oleh setiap cluster hasil pengelompokan berdasarkan indikator gaya hidup sehat?
1.3 Tujuan
Tujuan dari analisis ini adalah sebagai berikut:
Untuk mengelompokkan 44 kota di dunia pada tahun 2021 berdasarkan indikator gaya hidup sehat, yang meliputi tingkat obesitas, harapan hidup, polusi, tingkat kebahagiaan, jumlah aktivitas di luar ruangan, dan biaya gym bulanan, dengan menggunakan metode analisis cluster.
Untuk mengidentifikasi karakteristik masing-masing cluster yang terbentuk, guna memahami perbedaan dan kesamaan antara kota-kota berdasarkan indikator gaya hidup sehat.
Untuk memberikan wawasan yang lebih dalam mengenai pola-pola gaya hidup sehat di berbagai kota, yang dapat membantu pembuat kebijakan dalam merancang program-program untuk meningkatkan kualitas hidup masyarakat.
1.4 Tinjauan Pustaka
1.4.1 Statistika Deskriptif
Statistika deskriptif adalah cabang statistik yang berfokus pada pengumpulan, penyajian, dan analisis data untuk merangkum informasi yang terkandung dalam data tersebut. Tujuan utamanya adalah untuk memberikan gambaran umum atau ringkasan yang jelas tentang data yang telah dikumpulkan. Beberapa ukuran statistik deskriptif yang umum digunakan antara lain adalah mean (rata-rata), median (nilai tengah), dan modus (nilai yang paling sering muncul) yang mengukur pemusatan data. Sedangkan untuk menggambarkan sebaran data, digunakan ukuran range (jangkauan), variance (variansi), dan standard deviation (simpangan baku), yang menunjukkan sejauh mana data tersebar dari nilai rata-rata. Selain itu, visualisasi data juga merupakan bagian penting dari statistika deskriptif, seperti grafik batang, histogram, diagram lingkaran, dan boxplot, yang dapat memberikan gambaran yang lebih jelas dan mudah dipahami mengenai distribusi data.
1.4.2 Pengujian Asumsi
1.4.2.1 Uji KMO
Uji Kecukupan Sampel dilakukan untuk mengetahui apakah sampel sudah cukup mewakili populasi yang dapat diketahui dari nilai Kaiser Meyer Olki (KMO) yang merupakan indeks perbandingan nilai koefisien korelasi terhadap korelasi parsial. Jika nilai KMO < 0.5, maka sampel tidak mewakili populasi, sedangkan jika nilai KMO > 0,5, maka sampel mewakili populasi sehingga layak untuk dilakukan analisis cluster. Rumus KMO disajikan pada persamaan berikut:
\[ KMO = \frac{\sum_{i=1}^{p}\sum_{j=1}^{p}{r^2_{ij}}}{\sum_{i=1}^{p}\sum_{j=1}^{p}{r}^{2}_{ij}+\sum_{i=1}^{p}\sum_{j=1}^{p}a^{2}_{ij}} \]
\[ a_{ij}=\frac{-r_{ij}}{\sqrt{r_{ij}.r_{ij}}} \]
dimana:
\(p\) = banyaknya variabel
\(r_{ij}\) = koefisien korelasi antar variabel i dan j
\(a_{ij}\) = koefisien korelasi parsial antara variabel i dan j
1.4.2.2 Uji Multikolinieritas
Uji Multikolinieritas dilakukan untuk mengetahui hubungan linear atau korelasi yang tinggi antar variabel. Untuk mengetahui ada tidaknya multikolinearitas, dapat dilihat dari nilai-nilai korelasi pada matriks korelasi. Apabila nilai mutlak dari korelasi lebih dari 0.8 maka dapat dikatakan terjadi multikolinearitas.
\[ r_{xy}=\frac{s_{xy}}{\sqrt{s_{xx}}\sqrt{s_{yy}}}= \frac{\sum_{i=1}^{n}(X_{i}-\overline{X})(Y_{i}-\overline{Y})}{\sqrt{\sum_{i=1}^{n}(X_i-\overline{X})^2}\sqrt{\sum_{i=1}^{n}(Y_i-\overline{Y})^2}} \]
Jika terjadi multikolinineritas pada salah satu variabel maka pengurangan variabel yang terjadi multikolinieritas dapat dilakukan. Hal ini dapat dilakukan menggunakan Principal Component Analysis (PCA). Hal ini dilakukan dengan cara menghilangkan korelasi antar variabel bebas melalui transformasi variabel bebas asal ke variabel bebas baru yang tidak berkorelasi sama sekali atau sering disebut dengan Principal Component.
1.4.3 Analisis Cluster
Analisis cluster merupakan cabang ilmu statistik analisis multivariat yang bertujuan untuk mengelompokkan objek-objek berdasarkan kemiripan karakteristik di antara objek-objek tersebut. Analisis cluster memiliki dua metode yaitu, metode hirarki dan non-hirarki. Ciri-ciri cluster yang baik yaitu memiliki homogenitas (kesamaan) yang tinggi antara anggota dalam satu cluster (within-cluster) dan memiliki heterogenitas (perbedaan) yang tinggi antara cluster yang satu dengan cluster lainnya (between cluster). Dari dua hal tersebut dapat disimpulkan bahwa hasil analisis cluster yang baik adalah cluster yang dimana anggota-anggotanya memiliki kemiripan karakteristik yang tinggi. Sedangkan untuk clusteryang satu dengan yang cluster yang lainnya memiliki karakteristik yang sangat berbeda (Santoso, 2018). Tahapan dalam analisis cluster yaitu sebagai berikut:
Melakukan proses standarisasi data untuk menyamakan peubah yang memiliki satuan yang berbeda-beda
Menentukan ukuran kemiripan pada analisis cluster terdapat beberapa ukuran kemiripan diantaranya adalah ukuran asosiasi, ukuran korelasi dan ukuran jarak. Dalam mengukur kedekatan antara dua objek dapat digunakan metode pengukuran Euclidean Distance.
Memilih prosedur pembentukan cluster yang dapat dilakukan dengan dua cara, yaitu dengan metode Hierarki dan Non Hierarki.
Menentukan banyaknya cluster
Melakukan interpretasi hasil cluster yang terbentuk
1.4.3.1 Analisis Cluster Hierarki
Analisis cluster hierarki (hierarchical clustering) adalah salah satu metode dalam analisis klaster yang digunakan untuk mengelompokkan data ke dalam kelompok-kelompok yang memiliki kemiripan yang tinggi. Metode ini menghasilkan struktur hirarkis yang menggambarkan hubungan antar objek, sehingga dapat digunakan untuk mengidentifikasi pola dan struktur dalam data. Analisis cluster hierarki sering digunakan dalam berbagai disiplin ilmu seperti ilmu sosial, biologi, pemasaran, dan analisis data besar, untuk membantu memahami berbagai kategori atau segmen dalam dataset. Metode ini dimulai dengan pengelompokan dengan dua atau lebih obyek yang mempunyai obyek yang paling dekat. Kemudian proses diteruskan dengan meneruskan ke obyek lain yang memiliki kedekatan kedua. Demikian seterusnya sehinnga membentuk sebuah pohon yang mana ada hierarchy atau tingkatan dari yang paling mirip hingga yang berbeda. Pohon yang tebentuk oleh cluster ini disebut juga dengan dendogram.
1.4.3.2 Metode Analisis Cluster Hierarki
Analisis cluster hierarki memiliki 2 pendekatan utama yaitu metode agglomerative dan metode divissive
A. Metode Agglomerative
Merupakan pendekatan bottom-up, yang dimulai dengan anggapan bahwa setiap objek adalah cluster terpisah. Kemudian, langkah-langkah penggabungan dilakukan secara bertahap, menggabungkan objek-objek yang paling mirip menjadi satu cluster. Proses ini berlanjut hingga seluruh objek tergabung dalam satu cluster besar. Metode ini terbagi menjadi beberapa macam yaitu:
Single Linkage
Menggabungkan dua cluster berdasarkan jarak terpendek antara elemen-elemen di kedua cluster. Langkah-langkah menggunakan metode single linkage adalah menentukan jarak minimum dalam D= \(d_{ij}\), lalu menghitung jarak antara cluster yang telah dibentuk, selanjutnya jarak jarak antara (ij) dan cluster K yang lain dapat dihitung dengan rumus: \[ d_{(ij)k}=min(d_{ik},d_{jk}) \]
Complete Linkage
Menggabungkan dua cluster berdasarkan jarak terjauh antara elemen-elemen di kedua cluster. Rumus yang digunakan yaitu\[ d_{(ij)k}=max(d_{ik},d_{jk}) \]
Average Linkage
Menggabungkan dua cluster berdasarkan rata-rata jarak antar semua pasangan elemen di kedua cluster. Pada metode ini digunakan jarak rata-rata dari sampel pada suatu kelompok terhadap sampel pada kelompok lain. Perhitungan jarak dapat menggunakan rumus berikut:
\[ d_{(ij)k}=avg(d_{ik},d_{jk}) \]
Ward’s Method
Menggabungkan dua cluster dengan cara meminimalkan penambahan varians yang terjadi setelah penggabungan. Metode ini sering digunakan dalam analisis klaster untuk meminimalkan heterogenitas dalam masing-masing cluster. Diukur dengan menggunakan jumlah total dari deviasi kuadrat pada mean cluster untuk setiap pengamatan. Fungsi obyektif yang digunakan yaitu Error sum of squares (SSE). Dua obyek akan digabungkan jika mempunyai fungsi obyektif terkecil diantara kemungkinan yang ada. Rumus yang digunakan adalah:
\[ SSE=(\sum_{j=1}^{p}x_{ij}^{2}-\frac{(\sum_{ij}^{n}x_{ij})^2}{n}) \]
keterangan:
\(x_{ij}\) = nilai untuk objek ke-i pada cluster ke-j
\(p\) = banyak variabel
\(n\) = banyak objek dalam cluster
Centroid Method
Jarak yang digunakan dalam metode ini adalah jarak kuadrat Euclidean antara titik pusat dua kelompok. Dimana titik pusat kelompok ini adalah nilai tengah objek setiap peubah dalam satu kelompok. Dalam metode ini setiap kali terbentuk kelompok baru, maka titik pusatnya berubah.
B. Metode Divissive
Berbeda dengan agglomerative, metode ini menggunakan pendekatan top-down, di mana seluruh dataset dianggap sebagai satu cluster besar pada awalnya, kemudian secara bertahap dibagi menjadi sub-cluster yang lebih kecil berdasarkan jarak atau kesamaan. Proses ini berlanjut hingga setiap objek membentuk cluster yang terpisah.
1.4.3.3 Koefisien Korelasi Cophenetic
Koefisien Korelasi Cophenetic adalah ukuran yang digunakan untuk mengevaluasi kualitas atau kesesuaian hasil clustering dalam analisis cluster hierarki. Ukuran ini menghitung seberapa baik struktur dendrogram yang dihasilkan mencerminkan matriks jarak atau kemiripan asli antara data. Dengan kata lain, koefisien ini mengukur sejauh mana hubungan antar data dalam dendrogram sesuai dengan hubungan jarak asli yang dihitung sebelum proses clustering. Nilai koefisien korelasi cophenetic berikisar antara -1 dan 1, nilai rcoph mendekati 1 berarti proses clustering yang dihasilkan dapat dikatakan cukup baik.
1.4.3.4 Dendogram
Dendogram adalah diagram berbentuk pohon yang digunakan untuk memvisualisasikan hasil analisis cluster hierarki. Diagram ini menggambarkan hubungan hierarkis antara data, menunjukkan bagaimana objek atau data dalam dataset dikelompokkan berdasarkan kemiripan atau jarak antar mereka. Dendrogram memuat informasi penting tentang bagaimana cluster dibentuk secara bertahap dan bagaimana objek di dataset digabungkan ke dalam cluster pada setiap langkah. Dendogram bermanfaat untuk memberikan pandangan visual tentang bagaimana objek atau data dalam dataset dikelompokkan, membantu mengidentifikasi jumlah cluster optimal, dan mengidentifikasi hubungan antara objek.
1.5 Data
Pada kasus ini menggunakan data sekunder yang diperoleh dari website kaggle. Indikator Gaya Hidup Sehat yang digunakan dalam penelitian adalah Tingkat obesitas (X1), Harapan Hidup (X2), Polusi (X3), Tingkat Kebahagiaan (X4), Jumlah Aktivitas Luar Ruangan (X5), Biaya Gym Bulanan (X6).
| City | Obesity_levels | Life_expectancy | Pollution | Happiness_levels | Outdoor_activities | Cost_monthly_gym_membership |
|---|---|---|---|---|---|---|
| Amsterdam | 20.4 | 81.2 | 30.93 | 7.44 | 422 | 34.90 |
| Sydney | 29.0 | 82.1 | 26.86 | 7.22 | 406 | 41.66 |
| Vienna | 20.1 | 81.0 | 17.33 | 7.29 | 132 | 25.74 |
| Stockholm | 20.6 | 81.8 | 19.63 | 7.35 | 129 | 37.31 |
| Copenhagen | 19.7 | 79.8 | 21.24 | 7.64 | 154 | 32.53 |
| Helsinki | 22.2 | 80.4 | 13.08 | 7.80 | 113 | 35.23 |
| Fukuoka | 4.3 | 83.2 | 0.00 | 5.87 | 35 | 55.87 |
| Berlin | 22.3 | 80.6 | 39.41 | 7.07 | 254 | 26.11 |
| Barcelona | 23.8 | 82.2 | 65.19 | 6.40 | 585 | 37.80 |
| Vancouver | 29.4 | 81.7 | 24.26 | 7.23 | 218 | 31.04 |
| Melbourne | 29.0 | 82.1 | 25.90 | 7.22 | 243 | 36.89 |
| Beijing | 6.2 | 75.4 | 85.43 | 5.12 | 223 | 38.62 |
| Bangkok | 10.0 | 74.1 | 76.64 | 5.99 | 377 | 50.03 |
| Buenos Aires | 28.3 | 75.9 | 52.64 | 5.97 | 246 | 22.45 |
| Toronto | 29.4 | 81.7 | 37.83 | 7.23 | 174 | 32.64 |
| Madrid | 23.8 | 82.2 | 52.68 | 6.40 | 216 | 34.54 |
| Jakarta | 6.9 | 68.5 | 84.39 | 5.28 | 114 | 29.94 |
| Seoul | 4.7 | 81.3 | 57.82 | 5.87 | 144 | 43.03 |
| Frankfurt | 22.3 | 80.6 | 37.78 | 7.07 | 23 | 39.01 |
| Geneva | 19.5 | 82.6 | 27.25 | 7.56 | 44 | 70.00 |
| Tel Aviv | 26.1 | 81.9 | 47.28 | 7.12 | 139 | 58.31 |
| Istanbul | 32.1 | 74.7 | 69.49 | 5.13 | 419 | 16.97 |
| Cairo | 32.0 | 70.7 | 91.74 | 4.15 | 323 | 23.25 |
| Taipei | 6.2 | 75.4 | 49.32 | 5.12 | 134 | 34.76 |
| Los Angeles | 36.2 | 78.8 | 66.07 | 6.94 | 223 | 32.00 |
| Mumbai | 3.9 | 67.3 | 82.84 | 3.57 | 187 | 19.54 |
| Boston | 36.2 | 78.8 | 27.03 | 6.94 | 88 | 46.27 |
| Dublin | 25.3 | 80.5 | 40.07 | 7.09 | 159 | 37.35 |
| Tokyo | 4.3 | 83.2 | 42.84 | 5.87 | 387 | 70.82 |
| Chicago | 36.2 | 78.8 | 43.33 | 6.94 | 171 | 41.14 |
| Hong Kong | 6.2 | 75.4 | 67.46 | 5.51 | 277 | 57.95 |
| Shanghai | 6.2 | 75.4 | 77.40 | 5.12 | 108 | 44.68 |
| Brussels | 22.1 | 80.4 | 62.67 | 6.86 | 55 | 25.34 |
| San Francisco | 36.2 | 78.8 | 47.36 | 6.94 | 242 | 65.13 |
| Paris | 21.6 | 81.8 | 65.10 | 6.66 | 331 | 35.93 |
| Sao Paulo | 22.1 | 73.9 | 79.78 | 6.37 | 158 | 16.07 |
| Zurich | 19.5 | 82.6 | 17.31 | 7.56 | 69 | 73.11 |
| London | 27.8 | 80.4 | 58.91 | 7.16 | 433 | 42.71 |
| Johannesburg | 28.3 | 56.3 | 61.83 | 4.81 | 194 | 24.28 |
| Milan | 19.9 | 82.7 | 67.19 | 6.38 | 110 | 53.49 |
| Washington D.C. | 36.2 | 78.8 | 39.18 | 6.94 | 83 | 65.99 |
| New York | 36.2 | 78.8 | 57.36 | 6.94 | 359 | 64.66 |
| Moscow | 23.1 | 69.5 | 57.63 | 5.54 | 322 | 31.40 |
| Mexico City | 28.9 | 76.4 | 82.78 | 6.46 | 192 | 41.99 |
2 SOURCE CODE
2.1 Library
> library(psych)
> library(GPArotation)
> library(clValid)
> library(ggplot2)
> library(cluster)
> library(factoextra)
> library(tidyverse)
> library(car)
> library(readxl)Berikut adalah library yang akan digunakan untuk membantu dalam pemrograman ini agar lebih cepat dan efisien.
library psych dan library GPArotation, digunakan untuk keperluan uji asumsi KMO.
library clValid digunakan untuk membantu mengevaluasi kinerja algoritma clustering dengan menggunakan validasi internal dan eksternal.
library ggplot2 digunakan untuk membuat visualisasi data yang fleksibel dan estetis.
library cluster untuk analisis klaster, seperti partitioning clustering (k-means, PAM) dan hierarchical clustering.
library factoextra untuk membantu memvisualisasikan hasil analisis clustering dan analisis faktor.
library tidyverse untuk manipulasi, analisis, dan visualisasi data.
library car digunakan untuk memeriksa validity dari berbagai teknik regresi yang memerlukan banyak tes pada hasil.
library readxl digunakan untuk membuka dan membaca file Excel (.xls, .xlsx) ke dalam R.
2.2 Impor Data
> data_healthy <- read_excel("healthy_lifestyle_city.xlsx", col_types = c("text","numeric", "numeric","numeric","numeric", "numeric","numeric"))
> data_healthy<-data.frame(data_healthy)
> View(data_healthy)Untuk mengimport file data dari excel ke R dapat menggunakan fungsi read_excel dari library readxl dengan nama file healthy_lifestyle_city, yang kemudian disimpan dalam variabel data_healthy, serta view digunakan untuk melihat gambaran data secara keseluruhan
2.3 Statistika Deskriptif
> statdes <- summary(data_healthy)
> statdes
City Obesity_levels Life_expectancy Pollution
Length:44 Min. : 3.90 Min. :56.30 Min. : 0.00
Class :character 1st Qu.:19.50 1st Qu.:75.40 1st Qu.:30.01
Mode :character Median :22.30 Median :80.40 Median :50.98
Mean :21.93 Mean :78.17 Mean :49.96
3rd Qu.:29.00 3rd Qu.:81.80 3rd Qu.:66.35
Max. :36.20 Max. :83.20 Max. :91.74
Happiness_levels Outdoor_activities Cost_monthly_gym_membership
Min. :3.570 Min. : 23.0 Min. :16.07
1st Qu.:5.870 1st Qu.:125.2 1st Qu.:31.31
Median :6.900 Median :189.5 Median :37.33
Mean :6.435 Mean :214.0 Mean :40.42
3rd Qu.:7.175 3rd Qu.:288.2 3rd Qu.:47.21
Max. :7.800 Max. :585.0 Max. :73.11 Statistika deskriptif perlu dilakukan sebagai metode-metode yang berkaitan dengan pengumpulan dan penyajian suatu gugus data sehingga memberikan informasi yang informatif. Dengan menggunakan fungsi summary() maka kita akan mendapatkan ringkasan atau statiska deskriptif yang diperlukan, berupa ukuran pemusatan data dan ukuran penyebaran data.
2.4 Pengujian Asumsi
> # Uji Sampel Representatif
> kmo <- KMO(data_healthy[,2:7])
> kmo
Kaiser-Meyer-Olkin factor adequacy
Call: KMO(r = data_healthy[, 2:7])
Overall MSA = 0.6
MSA for each item =
Obesity_levels Life_expectancy
0.32 0.63
Pollution Happiness_levels
0.77 0.58
Outdoor_activities Cost_monthly_gym_membership
0.44 0.82
> kmo1<- KMO(data_healthy[,c(3:5,7)])
> kmo1
Kaiser-Meyer-Olkin factor adequacy
Call: KMO(r = data_healthy[, c(3:5, 7)])
Overall MSA = 0.72
MSA for each item =
Life_expectancy Pollution
0.72 0.77
Happiness_levels Cost_monthly_gym_membership
0.67 0.78
> #Uji Non-Multikolinearitas
> korelasi <- cor(data_healthy[c(3:5,7)], method = 'pearson')
> korelasi
Life_expectancy Pollution Happiness_levels
Life_expectancy 1.0000000 -0.5696807 0.7245871
Pollution -0.5696807 1.0000000 -0.6890177
Happiness_levels 0.7245871 -0.6890177 1.0000000
Cost_monthly_gym_membership 0.4179858 -0.2810688 0.2974250
Cost_monthly_gym_membership
Life_expectancy 0.4179858
Pollution -0.2810688
Happiness_levels 0.2974250
Cost_monthly_gym_membership 1.0000000Pengujian asumsi perlu dilakukan sebelum melakukan analisis cluster untuk mengetahui apakah sampel yang digunakan telah representatif atau tidak. Fungsi diatas digunakan untuk menghitung nilai KMO yang mengukur kecukupan sampel pada variabel yang digunakan. Sedangkan untuk melihat adanya hubungan linier atau korelasi antara tiap peubah menggunakan uji multikolinearitas yaitu dengan fungsi cor() dengan metode yang digunakan yaitu metode pearson.
2.5 Standarisasi data
> datastand <- scale(data_healthy[,c(3:5,7)])
> datastand
Life_expectancy Pollution Happiness_levels Cost_monthly_gym_membership
[1,] 0.5702845 -0.82978188 1.01392048 -0.36784165
[2,] 0.7399560 -1.00724544 0.79196774 0.08263110
[3,] 0.5325798 -1.42278052 0.86258906 -0.97824555
[4,] 0.6833988 -1.32249398 0.92312163 -0.20724412
[5,] 0.3063512 -1.25229341 1.21569570 -0.52577366
[6,] 0.4194655 -1.60809259 1.37711587 -0.34585112
[7,] 0.9473322 -2.17841775 -0.57001499 1.02955680
[8,] 0.4571703 -0.46002979 0.64063632 -0.95358950
[9,] 0.7588084 0.66405145 -0.03531066 -0.17459151
[10,] 0.6645464 -1.12061283 0.80205650 -0.62506426
[11,] 0.7399560 -1.04910417 0.79196774 -0.23523207
[12,] -0.5231536 1.54657295 -1.32667207 -0.11994836
[13,] -0.7682345 1.16330397 -0.44894986 0.64039099
[14,] -0.4288917 0.11683579 -0.46912738 -1.19748451
[15,] 0.6645464 -0.52892228 0.80205650 -0.51844349
[16,] 0.7588084 0.11857991 -0.03531066 -0.39183132
[17,] -1.8239679 1.50122599 -1.16525189 -0.69836603
[18,] 0.5891369 0.34269851 -0.57001499 0.17392513
[19,] 0.4571703 -0.53110242 0.64063632 -0.09395955
[20,] 0.8342179 -0.99024033 1.13498561 1.97115146
[21,] 0.7022512 -0.11687543 0.69108013 1.19215347
[22,] -0.6551203 0.85154366 -1.31658331 -1.56266064
[23,] -1.4092155 1.82170687 -2.30528188 -1.14417412
[24,] -0.5231536 -0.02792564 -1.32667207 -0.37717097
[25,] 0.1178274 0.70242195 0.50948243 -0.56109179
[26,] -2.0501965 1.43364159 -2.89043002 -1.39140103
[27,] 0.1178274 -0.99983296 0.50948243 0.38983218
[28,] 0.4383179 -0.43125192 0.66081384 -0.20457860
[29,] 0.9473322 -0.31047205 -0.57001499 2.02579460
[30,] 0.1178274 -0.28910665 0.50948243 0.04797935
[31,] -0.5231536 0.76302990 -0.93321039 1.16816379
[32,] -0.5231536 1.19644213 -1.32667207 0.28387780
[33,] 0.4194655 0.55417229 0.42877234 -1.00490074
[34,] 0.1178274 -0.11338721 0.50948243 1.64662449
[35,] 0.6833988 0.66012719 0.22699712 -0.29920453
[36,] -0.8059393 1.30021689 -0.06557695 -1.62263482
[37,] 0.8342179 -1.42365257 1.13498561 2.17839558
[38,] 0.4194655 0.39022561 0.73143517 0.15260097
[39,] -4.1239585 0.51754590 -1.63942366 -1.07553700
[40,] 0.8530703 0.75125713 -0.05548819 0.87095840
[41,] 0.1178274 -0.47005844 0.50948243 1.70393316
[42,] 0.1178274 0.32264120 0.50948243 1.61530464
[43,] -1.6354441 0.33441397 -0.90294411 -0.60107458
[44,] -0.3346298 1.43102542 0.02522190 0.10462163
attr(,"scaled:center")
Life_expectancy Pollution
78.17500 49.96045
Happiness_levels Cost_monthly_gym_membership
6.43500 40.42000
attr(,"scaled:scale")
Life_expectancy Pollution
5.304370 22.934285
Happiness_levels Cost_monthly_gym_membership
0.991202 15.006457
> rownames(datastand) <- 1:nrow(datastand)Selanjutnya adalah melakukan standarisasi data menggunakan fungsi scale() pada kolom terpilih yaitu kolom 3,4,5,dan 7. Hal ini perlu dilakukan untuk menyamakan peubah yang memiliki satuan yang berbeda-beda. Dataset yang telah distandarisasi memiliki nama datastand yang memiliki rata-rata 0 dan standar deviasi 1.
2.6 Jarak Euclidean
> jarak <- dist(datastand, method = "euclidean")
> jarak
1 2 3 4 5 6 7
2 0.5589905
3 0.8651954 1.1602245
4 0.5381413 0.4514525 0.7942992
5 0.5602076 0.8931760 0.6400471 0.5780603
6 0.8723007 0.9948501 0.8436800 0.6136367 0.4447657
7 2.5342765 2.0411552 2.6127824 2.1357434 2.6222850 2.5073850
8 0.7949547 1.2149350 0.9911844 1.1966007 1.0789568 1.4937262 2.9311536
9 1.8453484 1.8825891 2.4203576 2.2071946 2.3591187 2.7022344 3.1386389
10 0.4522364 0.7207449 0.4869515 0.4799394 0.5714890 0.8404490 2.4123163
11 0.3791292 0.3206075 0.8600554 0.3097182 0.7023238 0.8773922 2.1847292
12 3.5188768 3.5562772 3.9320696 3.8414198 3.8923077 4.2663739 4.2345928
13 2.9867285 2.9726917 3.5665206 3.2996206 3.3347909 3.6603907 3.7784097
14 2.1868188 2.4205000 2.2619417 2.4955548 2.3884977 2.7980317 3.4831124
15 0.4086185 0.7719275 1.0156180 0.8611697 0.9070396 1.2590292 2.6607683
16 1.4270224 1.4755820 1.8913162 1.7421382 1.9149331 2.2569037 2.7600711
17 4.0030090 4.1601442 4.2771021 4.3431310 4.2212354 4.6139740 4.9557952
18 2.0438759 1.9257276 2.5495032 2.2707924 2.5104398 2.8099573 2.6863426
19 0.5624560 0.6006375 1.2774980 0.8775599 1.0295725 1.3293536 2.3836678
20 2.3624041 1.9218077 3.0085244 2.2188809 2.5668004 2.4455856 2.2843353
21 1.7502747 1.4266740 2.5444496 1.8617273 2.1615749 2.2671126 2.4345061
22 3.3447441 3.5432058 3.4166526 3.6567069 3.5830335 3.9926414 4.3618202
23 4.7506431 4.8703096 4.9356059 5.0562299 5.0172053 5.4134066 5.4120764
24 2.7050029 2.6934301 2.8660684 2.8674244 2.9449739 3.2706129 3.0558726
25 1.6864665 1.9504317 2.2332055 2.1717415 2.0872082 2.4957122 3.5612909
26 5.3180479 5.4291532 5.3931188 5.5690421 5.5115463 5.8869771 5.7686665
27 1.0306126 0.7491791 1.5320657 0.9754890 1.1984777 1.3247577 1.9109428
28 0.5723464 0.7228035 1.2772189 0.9608275 1.0500402 1.3850473 2.5198638
29 2.9411212 2.4818097 3.5335338 2.8826668 3.3161947 3.3732009 2.1170052
30 0.9614635 0.9918498 1.6232861 1.2743613 1.3383571 1.6548715 2.5271295
31 3.1437697 2.9805941 3.7046334 3.3380974 3.4981177 3.7603991 3.3114295
32 3.3472828 3.3137320 3.7895540 3.6198868 3.7153133 4.0572125 3.8315238
33 1.6389991 1.9635111 2.0273245 2.1147516 2.0309910 2.4513448 3.5891900
34 2.2428710 1.9266291 2.9834808 2.3215806 2.5594334 2.6547837 2.5492188
35 1.6901430 1.8023098 2.2861156 2.1032909 2.1973566 2.5572311 3.2446623
36 3.0283176 3.3700874 3.2377582 3.4752836 3.2553438 3.6974884 4.7395609
37 2.6306509 2.1661418 3.1826984 2.4019039 2.7617119 2.5761378 2.1930169
38 1.3644864 1.4367322 2.1437820 1.7802532 1.8453628 2.1583868 3.0560425
39 5.6028812 5.7650386 5.6318512 5.8152387 5.5869420 5.8985585 6.2097716
40 2.2930139 2.1082618 3.0152239 2.5395728 2.8071134 3.0475439 2.9802301
41 2.2092594 1.8395739 2.8980107 2.2068560 2.4734111 2.5180371 2.2861907
42 2.3916779 2.1411512 3.1732796 2.5532572 2.7566127 2.9013166 2.9071961
43 3.1542603 3.2837106 3.3237667 3.4076377 3.2836739 3.6414005 3.9692388
44 2.6703681 2.7727752 3.2817748 3.0857309 3.0701275 3.4402676 3.9851372
8 9 10 11 12 13 14
2
3
4
5
6
7
8
9 1.5550840
10 0.7831731 2.0243570
11 0.9828097 1.9035032 0.4035728
12 3.0907522 2.0230845 3.6484433 3.5825843
13 2.8044253 1.8483525 3.2304073 3.0783081 1.2471856
14 1.5520760 1.7159788 2.1611246 2.2895221 1.9873351 2.1420651
15 0.5129908 1.5004964 0.6012202 0.5971485 3.2262355 2.7972139 1.9208372
16 1.0946467 0.5871391 1.5165966 1.4397064 2.3289751 2.1586775 1.4993026
17 3.5180231 2.9870891 4.1161169 4.1380057 1.4334566 1.8799264 2.1439409
18 1.8435709 0.7344581 2.1605395 1.9955620 1.8290422 1.6577388 1.7257865
19 0.8625630 1.4081137 0.8358565 0.6254220 3.0246896 2.4696353 1.9116152
20 3.0367382 2.9523167 2.6262070 2.2356520 4.3255446 3.3890090 3.9286761
21 2.1873676 1.7345550 2.0793043 1.7082388 3.1720045 2.3249297 2.8966457
22 2.6756479 2.3670114 3.3164202 3.4302702 1.6068607 2.3908604 1.2010454
23 4.1718670 3.4832963 4.7835929 4.8248964 1.6933753 2.7340432 2.6910826
24 2.3130736 1.9572714 2.6828218 2.6733935 1.5953712 1.8124352 1.1992241
25 1.2797279 0.9265586 1.9266680 1.9081065 2.1655296 1.8329406 1.4157986
26 4.7468924 4.2561848 5.3024309 5.3708246 2.5311152 3.4359152 3.2035788
27 1.4928242 1.9480096 1.1954513 0.9273483 3.2444382 2.5388264 2.2412279
28 0.7500720 1.3371208 0.8503855 0.7006197 2.9653804 2.4380169 1.8207366
29 3.2565369 2.4724168 3.1057895 2.7487853 3.2844615 2.6550301 3.5321793
30 1.0792172 1.2906217 1.2364835 1.0604937 2.6795968 2.0406240 1.7241080
31 3.0717650 2.0645675 3.3444819 3.1344912 1.5581992 0.8563506 2.4976223
32 3.0177080 1.9505575 3.4838249 3.3758012 0.5344784 0.9791122 2.0258954
33 1.0380495 1.0158806 1.7744257 1.8432337 2.3954364 2.2932627 1.3244944
34 2.6483257 2.1514866 2.5611666 2.2099304 3.1078236 2.0847409 3.0657034
35 1.3803072 0.3000596 1.8995442 1.8022083 2.1650810 1.9235827 1.6804321
36 2.3749259 2.2250589 3.1258087 3.2510569 1.9972698 2.2996581 1.3733759
37 3.3353329 3.3571321 2.8444420 2.4682851 4.6911449 3.7595888 4.2353624
38 1.3986628 0.9407913 1.7182689 1.5259302 2.5565129 1.9077551 2.0145801
39 5.2111361 5.2199384 5.6371176 5.7209993 3.8775837 4.0049373 3.8985320
40 2.3318484 1.0535995 2.5520394 2.2794593 2.2636970 1.7338931 2.5486213
41 2.6823277 2.3500460 2.4963876 2.1360004 3.3430025 2.3457819 3.1653196
42 2.7100085 2.0069742 2.7361901 2.4027096 2.8794846 1.8332672 3.0349164
43 2.7417299 2.6030331 3.2116448 3.2501100 1.7656578 1.7850654 1.4307378
44 2.3877987 1.3658258 2.9402592 2.8300489 1.3881432 0.8783937 1.9172484
15 16 17 18 19 20 21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 1.0702144
17 3.7705278 3.1548652
18 1.7684354 0.8276513 2.8775788
19 0.4992522 1.0289337 3.6000680 1.5226234
20 2.5593998 2.8615468 5.0686065 2.8237989 2.2050028
21 1.7634234 1.7593434 4.0025077 1.6885357 1.3741470 1.2585990
22 3.0374711 2.3556169 1.5994369 2.3195245 3.0226961 4.9100218 3.7947340
23 4.4579184 3.6496244 1.3315933 3.3059666 4.3359534 5.8720298 4.7595173
24 2.4926035 1.8255737 2.0395209 1.5002631 2.2726048 3.7872000 2.8361298
25 1.3793219 1.0378713 2.6892817 1.4342588 1.3682653 3.1908982 2.0296911
26 5.0614225 4.3325214 1.8741089 3.9988510 4.9293905 6.4580012 5.4297367
27 1.1963373 1.6029664 3.7436313 1.7990147 0.7655832 1.8453000 1.3408439
28 0.4232960 0.9616039 3.5257269 1.5099504 0.1515561 2.3297736 1.4561147
29 2.9126304 2.5200100 4.3287079 1.9960852 2.4995941 1.8398078 1.5436524
30 0.8734115 1.0331011 3.2152179 1.3425675 0.4594165 2.2571329 1.3089412
31 2.9892419 2.3018581 2.4030872 1.5919454 2.5895486 3.1366603 2.2169225
32 3.0923645 2.2202276 1.6660944 1.5970873 2.8210828 3.9408994 2.8500366
33 1.2685189 0.9466369 2.9265647 1.5686670 1.4331584 3.4515002 2.3294045
34 2.2901288 2.2173784 3.8316133 1.9401817 1.8266017 1.3336637 0.7622893
35 1.3390120 0.6134698 3.0152981 0.9842389 1.2974707 2.9538820 1.7445946
36 2.7349780 2.3152742 1.7721018 2.5189610 2.7901185 4.7215421 3.5746821
37 2.8658530 3.2186686 5.4025657 3.1788346 2.5192836 0.4804126 1.7014133
38 1.1662699 1.0359781 3.2540562 1.3134970 0.9588032 2.3553523 1.1913929
39 5.5041851 5.2001171 2.5738453 4.9948604 5.3149385 6.6209206 5.8539267
40 2.0833197 1.4157015 3.3798434 0.9935664 1.7935548 2.3792481 1.1987206
41 2.3080130 2.3337481 4.0289338 2.0949811 1.8353472 1.1164517 0.8724595
42 2.3796098 2.1858390 3.6493065 1.8615651 1.9449466 1.6597453 0.8641532
43 2.9915148 2.5642932 1.2146039 2.3791376 2.7871060 4.3154888 3.3800979
44 2.4148354 1.7799578 2.0700418 1.5481958 2.2124788 3.4560442 2.2577006
22 23 24 25 26 27 28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 1.6317267
24 1.4820152 2.3983780
25 2.2265088 3.4420258 2.0855585
26 2.1889265 0.9823292 2.8181626 4.1813667
27 3.3424224 4.5353082 2.3054756 1.9498534 5.0353076
28 2.9318352 4.2626009 2.2509971 1.2401344 4.8672797 0.8956695
29 4.1656343 4.8124169 2.9306884 3.0937563 5.3933906 2.2371822 2.6006129
30 2.7977149 4.0164066 2.0078068 1.1636566 4.6151283 0.7886668 0.4578276
31 2.7621779 3.0224807 1.7800231 2.3422676 3.6281760 2.4911252 2.6030888
32 1.8831293 2.0428096 1.3914244 2.1772344 2.7640589 2.9355018 2.7861273
33 2.1448838 3.5277709 2.1686398 0.5625336 4.2472560 2.1113294 1.2906491
34 3.8939141 4.6677515 2.8080904 2.3536261 5.2804005 1.5379574 1.9114409
35 2.4098206 3.5853469 2.0854621 0.6855967 4.3568467 1.9052318 1.2034634
36 1.3389055 2.4250973 2.2328169 1.6334842 3.0982644 3.2441164 2.6617076
37 5.2345332 6.2000211 4.0473683 3.5957549 6.7402815 2.0695535 2.6542420
38 2.9161706 4.0368910 2.3621695 0.8643336 4.7633808 1.4590374 0.8987465
39 3.5335405 3.0852461 3.7214061 4.7863741 2.6085450 5.2019506 5.2691787
40 3.1301052 3.9225158 2.3821950 1.7067298 4.6957185 2.0390127 1.8000599
41 4.0434183 4.8599034 2.8824982 2.5504996 5.4281580 1.4168706 1.9415299
42 3.7830101 4.4851621 2.8062744 2.2092838 5.1511487 1.8029755 2.0014857
43 1.5245337 2.1271408 1.2641829 2.2816525 2.4402945 2.7983961 2.7366551
44 2.2402644 2.8806432 2.0551936 1.1888074 3.6989574 2.5356741 2.1366111
29 30 31 32 33 34 35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 2.4011669
31 2.0450370 2.2031849
32 2.8354758 2.4586222 1.0604810
33 3.3479760 1.3846211 2.7403209 2.4583687
34 1.4268866 1.6082735 1.8679536 2.7120198 2.7520395
35 2.6556681 1.1921621 2.2283646 2.1206781 0.7871516 2.1872915
36 4.3856328 2.5496939 2.9849426 2.3056210 1.6383455 3.7242947 2.1130334
37 2.0450623 2.5942894 3.4528308 4.2844264 3.8361339 1.7041260 3.3656842
38 2.4438182 0.7827430 2.1977094 2.4065649 1.2075982 1.6204878 0.7753023
39 6.0963510 4.9521230 4.3080145 3.9207803 4.9926413 5.5153227 5.2170137
40 1.6536440 1.6184638 1.6591739 2.0131453 1.9950467 1.4862845 1.2190867
41 1.4079970 1.6658111 2.0735898 2.9284981 2.9127872 0.3612460 2.3852776
42 1.5565112 1.6824815 1.6988515 2.5136717 2.6488833 0.4371518 2.0442385
43 3.7547163 2.4246564 2.1335469 1.7155083 2.4914838 3.2127226 2.6174442
44 2.9532105 1.8442582 1.5910605 1.3965388 1.6527020 2.2808351 1.3544206
36 37 38 39 40 41 42
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 5.0988982
38 2.4731339 2.7800846
39 3.7944874 6.8291426 5.2714520
40 3.0449595 2.8030711 1.2056710 5.5788110
41 3.9222401 1.4279096 1.8129999 5.5956556 1.7450595
42 3.5530191 2.0666598 1.5113961 5.4670980 1.2639370 0.7976389
43 1.8345633 4.5900588 2.7322135 2.6445714 3.0416319 3.3210158 3.1593330
44 1.7974712 3.8791114 1.4672979 4.3996904 1.5705103 2.5712143 1.9874367
43
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 2.0625649Fungsi dist() digunakan untuk menghitung matriks jarak antar pasangan baris dalam sebuah dataset. Fungsi ini mengukur jarak antar data berdasarkan nilai atribut numerik. Proses ini menghitung jarak menggunakan metode Euclidean Distance dari data yang telah distandarisasi, dari perhitungan ini menghasilkan informasi penting tentang kedekatan atau perbedaan antar data dalam ruang multidimensi.
2.7 Korelasi Cophenetic
> #Koefisien Korelasi Cophenetic
> d1 <- dist(data_healthy[,c(3:5,7)])
>
> #Single Linkage
> hiers <- hclust(dist(data_healthy[,c(3:5,7)]), method = "single")
> #korelasi cophenetic
> hc1 <- hclust(d1, "single")
> d2 <- cophenetic(hc1)
> cors <- cor(d1,d2)
> cors
[1] 0.531343
>
> #Average Linkage
> hierave <- hclust(dist(data_healthy[,c(3:5,7)]), method = "ave")
> #korelasi cophenetic
> hc2 <- hclust(d1, "ave")
> d3 <- cophenetic(hc2)
> corave <- cor(d1,d3)
> corave
[1] 0.6757201
>
> #Complete Linkage
> hiercomp <- hclust(dist(data_healthy[,c(3:5,7)]), method = "complete")
> #korelasi cophenetic
> hc3 <- hclust(d1, "complete")
> d4 <- cophenetic(hc3)
> corcomp <- cor(d1,d4)
> corcomp
[1] 0.6351042
>
> #Centorid Linkage
> hiercen <- hclust(dist(data_healthy[,c(3:5,7)]), method = "centroid")
> #korelasi cophenetic
> hc4 <- hclust(d1, "centroid")
> d5 <- cophenetic(hc4)
> corcen <- cor(d1,d5)
> corcen
[1] 0.6332831
>
> #Ward
> hierward <- hclust(dist(data_healthy[,c(3:5,7)]), method = "ward.D")
> #korelasi cophenetic
> hc5 <- hclust(d1,"ward.D")
> d6 <- cophenetic(hc5)
> corward <- cor(d1,d6)
> corward
[1] 0.6514108
>
> KorCop<-data.frame(cors,corave,corcomp,corcen,corward)
> KorCop
cors corave corcomp corcen corward
1 0.531343 0.6757201 0.6351042 0.6332831 0.6514108Menghitung koefisien korelasi cophenetic untuk berbagai metode
linkage dalam analisis cluster hierarki, menggunakan variabel tertentu
(kolom 3, 4, 5, dan 7 dari dataset data_healthy). Awalnya, matriks jarak
dihitung menggunakan metode Euclidean (dist()). Dendrogram kemudian
dibuat dengan metode single linkage, average linkage, complete linkage,
centroid linkage, dan Ward’s method menggunakan fungsi hclust().
Koefisien korelasi cophenetic dihitung dengan membandingkan jarak asli
(d1) dengan jarak cophenetic dari masing-masing dendrogram menggunakan
fungsi cophenetic() dan cor(). Hasil korelasi untuk setiap metode
linkage disimpan dalam variabel terpisah (cors,
corave, corcomp, corcen,
corward) dan dirangkum ke dalam data frame KorCop untuk
memudahkan perbandingan. Nilai koefisien korelasi cophenetic membantu
mengevaluasi sejauh mana struktur dendrogram mencerminkan jarak asli,
dengan nilai lebih tinggi menunjukkan representasi yang lebih baik.
Proses ini membantu memilih metode linkage yang paling sesuai
berdasarkan tingkat kesesuaian struktur dendrogram dengan data asli.
2.8 Indeks Validitas
> inval <- clValid(datastand, c(3:5,7), clMethods = "hierarchical", validation = "internal", metric = "euclidean", method = "average")
> summary(inval)
Clustering Methods:
hierarchical
Cluster sizes:
3 4 5 7
Validation Measures:
3 4 5 7
hierarchical Connectivity 9.3782 12.5183 17.3202 26.3210
Dunn 0.3099 0.3099 0.3099 0.3901
Silhouette 0.3789 0.2691 0.2542 0.3396
Optimal Scores:
Score Method Clusters
Connectivity 9.3782 hierarchical 3
Dunn 0.3901 hierarchical 7
Silhouette 0.3789 hierarchical 3
> optimalScores(inval)
Score Method Clusters
Connectivity 9.3781746 hierarchical 3
Dunn 0.3900871 hierarchical 7
Silhouette 0.3788884 hierarchical 3
> plot(inval)Untuk mengetahui apakah hasil kelompok cluster yang terbentuk mampu menjelaskan dan mewakili populasi secara umum maka dibutuhkan validitas cluster. Validitas cluster digunakan untuk menentukan jumlah kelompok optimum. Fungsi clValid dari package clValid digunakan untuk melakukan validasi internal pada analisis cluster hierarki dengan data yang telah distandarisasi (datastand). Proses ini bertujuan mengevaluasi performa metode clustering berdasarkan sejumlah metrik validasi internal, seperti connectivity, Dunn index, dan silhouette width. Variabel yang digunakan berasal dari kolom tertentu (3,4,5, dan 7). Metode linkage yang digunakan adalah average linkage, dengan jarak Euclidean sebagai metrik pengukuran.
Fungsi summary(inval) memberikan ringkasan hasil validasi, termasuk nilai dari masing-masing metrik validasi internal. Fungsi optimalScores(inval) menampilkan skor terbaik untuk setiap metrik validasi, membantu mengidentifikasi konfigurasi cluster yang optimal. Fungsi plot(inval) menghasilkan visualisasi yang mempermudah interpretasi hasil validasi internal. Proses ini penting untuk memastikan bahwa hasil clustering tidak hanya berdasarkan struktur data tetapi juga didukung oleh evaluasi yang kuat dan objektif terhadap kualitas cluster.
2.9 Proses Clustering Dengan Metode Average Linkage
> hirave <- hclust(dist(scale(data_healthy[,c(3:5,7)])), method = "average")
> hirave
Call:
hclust(d = dist(scale(data_healthy[, c(3:5, 7)])), method = "average")
Cluster method : average
Distance : euclidean
Number of objects: 44
> plot(hirave, labels(data_healthy$City), hang = 1, col = "blue", main = "Cluster Dendogram", sub = " ", xlab = "City", ylab = "Jarak")>
> anggotaave <- data.frame(id = data_healthy$City, cutree(hirave, k = 3))
> anggotaave
id cutree.hirave..k...3.
1 Amsterdam 1
2 Sydney 1
3 Vienna 1
4 Stockholm 1
5 Copenhagen 1
6 Helsinki 1
7 Fukuoka 1
8 Berlin 1
9 Barcelona 1
10 Vancouver 1
11 Melbourne 1
12 Beijing 2
13 Bangkok 2
14 Buenos Aires 2
15 Toronto 1
16 Madrid 1
17 Jakarta 2
18 Seoul 1
19 Frankfurt 1
20 Geneva 1
21 Tel Aviv 1
22 Istanbul 2
23 Cairo 2
24 Taipei 2
25 Los Angeles 1
26 Mumbai 2
27 Boston 1
28 Dublin 1
29 Tokyo 1
30 Chicago 1
31 Hong Kong 2
32 Shanghai 2
33 Brussels 1
34 San Francisco 1
35 Paris 1
36 Sao Paulo 2
37 Zurich 1
38 London 1
39 Johannesburg 3
40 Milan 1
41 Washington D.C. 1
42 New York 1
43 Moscow 2
44 Mexico City 2
> clus_hier <- eclust(datastand, FUNcluster = "hclust", k = 3, hc_method = "average", graph = TRUE)
> fviz_dend(clus_hier, rect = TRUE, cex = 0.5)>
> idclus = clus_hier$cluster
> idclus
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 1 1 1 1 1 1 1 1 1 1 2 2 2 1 1 2 1 1 1 1 2 2 2 1 2
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
1 1 1 1 2 2 1 1 1 2 1 1 3 1 1 1 2 2
> aggregate(data_healthy[,c(3:5,7)],list(idclus),mean)
Group.1 Life_expectancy Pollution Happiness_levels
1 1 81.02667 39.29633 6.966667
2 2 73.27692 73.65692 5.333077
3 3 56.30000 61.83000 4.810000
Cost_monthly_gym_membership
1 44.21833
2 32.89615
3 24.28000Selanjutnya adalah melakukan analisis cluster hierarki dengan metode average linkage. Langkah pertama adalah membuat dendrogram menggunakan fungsi hclust(), di mana data distandarisasi terlebih dahulu dengan fungsi scale(). Dendrogram kemudian divisualisasikan dengan fungsi plot(), menampilkan struktur cluster dari dataset data_healthy, menggunakan nama kota sebagai label pada sumbu horizontal. Argumen hang = 1 mengatur posisi ujung cabang dendrogram agar terlihat lebih rapi, sementara elemen visual seperti warna dan judul ditambahkan.
Cluster dengan jumlah (k = 3) ditentukan menggunakan fungsi cutree(), dan hasilnya disimpan dalam data frame anggotaave, yang mencocokkan nama kota dengan cluster yang mereka miliki. Untuk analisis lebih lanjut, fungsi eclust() dari package factoextra digunakan untuk membangun model clustering yang sama tetapi dengan dukungan visualisasi yang lebih interaktif. Hasil dendrogram divisualisasikan kembali dengan kotak yang mengelilingi cluster menggunakan fviz_dend(). Selanjutnya, hasil cluster dianalisis dengan fungsi aggregate() untuk menghitung rata-rata nilai tiap variabel dalam setiap cluster. Ini memberikan gambaran karakteristik masing-masing cluster berdasarkan variabel yang digunakan (kolom 3, 4, 5, dan 7 dari dataset). Keseluruhan proses ini bertujuan untuk memahami bagaimana data dikelompokkan berdasarkan kesamaan, memvisualisasikan struktur cluster, dan mengeksplorasi profil rata-rata dari setiap kelompok.
3 HASIL DAN PEMBAHASAN
3.1 Statistika Deskriptif
| Variabel | Min | Q1 | Median | Mean | Q3 | Max |
|---|---|---|---|---|---|---|
| Tingkat obesitas (X1), , | 3.90 | 19.50 | 22.30 | 21.93 | 29 | 36.20 |
| Harapan Hidup (X2) | 56.30 | 75.40 | 80.40 | 78.17 | 81.80 | 83.20 |
| Polusi (X3) | 0 | 30.01 | 50.98 | 49.96 | 66.35 | 91.74 |
| Tingkat Kebahagiaan (X4) | 3.57 | 5.87 | 6.90 | 6.435 | 7.175 | 7.80 |
| Jumlah Aktivitas Luar Ruangan (X5) | 23 | 125.2 | 189.5 | 214 | 288.2 | 585 |
| Biaya Gym Bulanan (X6) | 16.07 | 31.31 | 37.33 | 40.42 | 47.21 | 73.11 |
Tingkat obesitas di 44 kota memiliki nilai minimum sebesar 3.90% dan maksimum 36.20%, dengan rata-rata 21.93%. Sebagian besar kota memiliki tingkat obesitas antara 19.50% (kuartil pertama) dan 29.00% (kuartil ketiga), dengan nilai median 22.30%, yang mendekati rata-rata. Hal ini menunjukkan distribusi data yang relatif simetris, di mana tingkat obesitas di mayoritas kota berada dalam rentang menengah, sementara hanya sedikit kota yang memiliki tingkat obesitas yang sangat rendah atau sangat tinggi.
Harapan hidup di 44 kota bervariasi antara 56.30 tahun hingga 83.20 tahun, dengan rata-rata sebesar 78.17 tahun. Median sebesar 80.40 tahun menunjukkan bahwa separuh kota memiliki harapan hidup yang lebih tinggi dari rata-rata. Mayoritas kota memiliki harapan hidup yang cukup tinggi, berada di antara kuartil pertama (75.40 tahun) dan kuartil ketiga (81.80 tahun). Distribusi data ini mencerminkan tingkat kesehatan dan kualitas hidup yang baik secara keseluruhan.
Tingkat polusi di 44 kota menunjukkan variasi yang sangat luas, dengan nilai minimum 0.00 (tanpa polusi terukur) hingga maksimum 91.74, serta rata-rata 49.96. Median sebesar 50.98 mendekati rata-rata, menunjukkan distribusi data yang relatif merata. Namun, rentang yang luas antara nilai minimum dan maksimum mengindikasikan adanya perbedaan signifikan dalam tingkat polusi di berbagai kota, dengan beberapa kota mengalami kondisi lingkungan yang jauh lebih bersih atau jauh lebih tercemar dibandingkan yang lain.
Tingkat kebahagiaan memiliki nilai minimum 3.57 dan maksimum 7.80, dengan rata-rata sebesar 6.435. Median sebesar 6.90, yang lebih tinggi dari rata-rata, menunjukkan distribusi data yang sedikit miring ke kiri, artinya sebagian besar kota memiliki tingkat kebahagiaan yang cukup tinggi. Kuartil pertama (5.87) hingga kuartil ketiga (7.175) menunjukkan bahwa mayoritas kota memiliki tingkat kebahagiaan di atas rata-rata, mencerminkan kualitas hidup yang positif di banyak wilayah.
Jumlah aktivitas luar ruangan per bulan berkisar dari 23.0 hingga 585.0, dengan rata-rata 214.0 aktivitas. Median sebesar 189.5 lebih rendah dari rata-rata, menunjukkan distribusi data yang miring ke kanan, di mana sebagian besar kota memiliki jumlah aktivitas luar ruangan yang lebih rendah, tetapi ada beberapa kota dengan aktivitas luar ruangan yang sangat tinggi yang meningkatkan rata-rata secara keseluruhan. Hal ini mencerminkan ketimpangan dalam partisipasi masyarakat terhadap kegiatan luar ruangan antar kota.
Biaya keanggotaan gym bulanan bervariasi dari 16.07 hingga 73.11, dengan rata-rata sebesar 40.42 dan median 37.33. Median yang sedikit lebih rendah dari rata-rata menunjukkan adanya beberapa kota dengan biaya gym yang sangat tinggi yang memengaruhi nilai rata-rata. Sebagian besar kota memiliki biaya gym bulanan yang berada dalam kisaran kuartil pertama (31.31) hingga kuartil ketiga (47.21), menunjukkan bahwa secara umum, biaya gym tetap cukup terjangkau bagi masyarakat di banyak kota.
3.2 Uji Asumsi
Sebelum melakukan clustering terdapat beberapa asumsi yang harus dipenuhi yaitu:
3.2.1 UJI KMO (Kaiser Meyer Olkin)
Uji asumsi yang pertama adalah uji menggunakan Kaiser Mayer Olkin (KMO) untuk menguji apakah sampel telah representatif atau mewakili populasi. Berikut disajikan hasil uji KMO:
| Tingkat Obesitas (X1) | Harapan Hidup (X2) | Polusi (X3) | Tingkat Kebahagiaan (X4) | Jumlah Aktivitas Luar Ruangan (X5) | Biaya Gym Bulanan (X6) | |
|---|---|---|---|---|---|---|
| KMO | 0.32 | 0.63 | 0.77 | 0.58 | 0.44 | 0.82 |
Berdasarkan hasil uji KMO yang telah dilakukan, didapatkan hasil yaitu nilai KMO pada Tingkat obesitas sebesar 0.32, pada harapan hidup sebesar 0.63, polusi sebesar 0.77, tingkat kebahagiaan sebesar 0.58, jumlah aktivitas luar ruangan sebesar 0.44, dan biaya gym bulanan sebesar 0.82. Karena nilai X1 dan X5 memiliki nilai <0.5 maka sampel tidak representatif sehingga perlu menghapus variabel tersebut dan dilakukan uji asumsi kembali tanpa variabel tersebut.
Pada Uji KMO tanpa variabel X1 dan X5 didapatkan hasil sebagai berikut:
| Harapan Hidup (X2) | Polusi (X3) | Tingkat Kebahagiaan (X4) | Biaya Gym Bulanan (X6) | |
|---|---|---|---|---|
| KMO | 0.72 | 0.77 | 0.67 | 0.78 |
Berdasarkan hasil uji KMO setelah dilakukan pengurangan variabel, nilai KMO pada tiap variabel lebih dari 0.5 sehingga menunjukkan bahwa sampel dapat merepresentatifkan populasi dan dapat dilakukan uji selanjutnya.
3.2.2 Uji Non-Multikoliniearitas
Uji asumsi yang kedua adalah uji asumsi Non-Multikolinearitas yang dapat dilihat dari korelasi antar variabel. Apabila nilai mutlak dari korelasi lebih dari 0.8 maka dapat dikatakan terjadi multikolinearitas. Berikut disajikan tabel korelasi antar variabel:
| Life_expectancy | Pollution | Happiness_levels | Cost_monthly_gym_membership | |
|---|---|---|---|---|
| Life_expectancy | 1.0000000 | -0.5696807 | 0.7245871 | 0.4179858 |
| Pollution | -0.5696807 | 1.0000000 | -0.6890177 | -0.2810688 |
| Happiness_levels | 0.7245871 | -0.6890177 | 1.0000000 | 0.2974250 |
| Cost_monthly_gym_membership | 0.4179858 | -0.2810688 | 0.2974250 | 1.0000000 |
Berdasarkan Uji Non-Multikolinieritas, didapatkan mutlak dari nilai korelasi antar variabel yakni kurang dari 0.8 sehingga dapat disimpulkan bahwa tidak terjadi multikolinieritas antar variabel.
3.3 Standarisasi data
Setelah memenuhi asumsi maka selanjutnya adalah melakukan standarisasi variabel ke bentuk Z-Score. Apabila satu data yang sama maka tidak perlu melakukan standarisasi, namun jika satuan berbeda maka standarisasi harus dilakukan, agar mempersempit dan menyamakan satuan peubah yang berbeda beda. Karena dalam kasus ini satuan peubah ada yang berbeda, maka harus dilakukan standarisasi. Berikut merupakan hasil standarisasi data indikator gaya hidup sehat pada 44 kota di dunia pada tahun 2021 :
| Life_expectancy | Pollution | Happiness_levels | Cost_monthly_gym_membership |
|---|---|---|---|
| 0.5702845 | -0.8297819 | 1.0139205 | -0.3678417 |
| 0.7399560 | -1.0072454 | 0.7919677 | 0.0826311 |
| 0.5325798 | -1.4227805 | 0.8625891 | -0.9782456 |
| 0.6833988 | -1.3224940 | 0.9231216 | -0.2072441 |
| 0.3063512 | -1.2522934 | 1.2156957 | -0.5257737 |
| 0.4194655 | -1.6080926 | 1.3771159 | -0.3458511 |
| 0.9473322 | -2.1784177 | -0.5700150 | 1.0295568 |
| 0.4571703 | -0.4600298 | 0.6406363 | -0.9535895 |
| 0.7588084 | 0.6640514 | -0.0353107 | -0.1745915 |
| 0.6645464 | -1.1206128 | 0.8020565 | -0.6250643 |
| 0.7399560 | -1.0491042 | 0.7919677 | -0.2352321 |
| -0.5231536 | 1.5465729 | -1.3266721 | -0.1199484 |
| -0.7682345 | 1.1633040 | -0.4489499 | 0.6403910 |
| -0.4288917 | 0.1168358 | -0.4691274 | -1.1974845 |
| 0.6645464 | -0.5289223 | 0.8020565 | -0.5184435 |
| 0.7588084 | 0.1185799 | -0.0353107 | -0.3918313 |
| -1.8239679 | 1.5012260 | -1.1652519 | -0.6983660 |
| 0.5891369 | 0.3426985 | -0.5700150 | 0.1739251 |
| 0.4571703 | -0.5311024 | 0.6406363 | -0.0939596 |
| 0.8342179 | -0.9902403 | 1.1349856 | 1.9711515 |
| 0.7022512 | -0.1168754 | 0.6910801 | 1.1921535 |
| -0.6551203 | 0.8515437 | -1.3165833 | -1.5626606 |
| -1.4092155 | 1.8217069 | -2.3052819 | -1.1441741 |
| -0.5231536 | -0.0279256 | -1.3266721 | -0.3771710 |
| 0.1178274 | 0.7024219 | 0.5094824 | -0.5610918 |
| -2.0501965 | 1.4336416 | -2.8904300 | -1.3914010 |
| 0.1178274 | -0.9998330 | 0.5094824 | 0.3898322 |
| 0.4383179 | -0.4312519 | 0.6608138 | -0.2045786 |
| 0.9473322 | -0.3104720 | -0.5700150 | 2.0257946 |
| 0.1178274 | -0.2891067 | 0.5094824 | 0.0479793 |
| -0.5231536 | 0.7630299 | -0.9332104 | 1.1681638 |
| -0.5231536 | 1.1964421 | -1.3266721 | 0.2838778 |
| 0.4194655 | 0.5541723 | 0.4287723 | -1.0049007 |
| 0.1178274 | -0.1133872 | 0.5094824 | 1.6466245 |
| 0.6833988 | 0.6601272 | 0.2269971 | -0.2992045 |
| -0.8059393 | 1.3002169 | -0.0655769 | -1.6226348 |
| 0.8342179 | -1.4236526 | 1.1349856 | 2.1783956 |
| 0.4194655 | 0.3902256 | 0.7314352 | 0.1526010 |
| -4.1239585 | 0.5175459 | -1.6394237 | -1.0755370 |
| 0.8530703 | 0.7512571 | -0.0554882 | 0.8709584 |
| 0.1178274 | -0.4700584 | 0.5094824 | 1.7039332 |
| 0.1178274 | 0.3226412 | 0.5094824 | 1.6153046 |
| -1.6354441 | 0.3344140 | -0.9029441 | -0.6010746 |
| -0.3346298 | 1.4310254 | 0.0252219 | 0.1046216 |
3.4 Korelasi Cophenetic
Koefisien Korelasi Cophenetic adalah ukuran yang digunakan untuk mengevaluasi kualitas atau kesesuaian hasil clustering. Nilai yang paling besar atau mendekati 1 akan dipilih sebagai metode terbaik dalam analisis ini. Berikut hasil koefisien korelasi cophenetic:
| Metode | Korelasi Cophenetic |
|---|---|
| Single linkage | 0.531343 |
| Average Linkage | 0.6757201 |
| Complete Linkage | 0.6351042 |
| Centroid | 0.6332831 |
| Ward | 0.6514108 |
Dari hasil koefisein korelasi cophenetic didapatkan bahwa Average Linkage memiliki nilai koefisien korelasi tertinggi atau yang paling mendekati 1 dibandingkan metode lain, yaitu sebesar 0.6757201. Oleh karena itu metode cluster yang terbaik yang akan digunakan adalah metode Average Linkage.
3.5 Indeks Validitas
Validitas cluster digunakan untuk menentukan jumlah kelompok optimum. Proses ini bertujuan mengevaluasi performa metode clustering berdasarkan sejumlah metrik validasi internal, seperti connectivity, Dunn index, dan silhouette width.
Metode Clustering : Hierarchical
Cluster Sizes: 3,4,5,7
A. Connectivity
B. Dunn
C. Silhouette
Untuk menentukan jumlah cluster yang paling optimal dari 3 indeks tersebut, maka dilihat dari tabel berikut:
| Score | Clusters | |
|---|---|---|
| Connectivity | 9.3781746 | 3 |
| Dunn | 0.3900871 | 7 |
| Silhouette | 0.3788884 | 3 |
Berdasarkan tabel tersebut, menunjukkan bahwa Connectivity dan Silhouette menyarankan jumlah cluster yang optimal sebanyak 3 cluster sedangkan Dunn index menyarankan sebanyak 7 cluster, tetapi karena nilai score connectivity lebih besar daripada yang lainnya maka dipilih cluster yang optimal sebesar 3 cluster.
3.6 Proses Clustering (Metode Average Linkage)
Hasil Analisis Cluster divisualisasikan melalui dendogram. Berdasarkan dendogram tersebut menunjukkan bahwa pengelompokan 44 kota di dunia berdasarkan indikator gaya hidup sehat membentuk 3 klaster. Garis horizontal mewakili kota yang dikelompokkan, sedangkan garis vertikal menunjukkan jarak Euclidean antar kota.
Dengan melihat selisih terpanjang dari gambar diatas terlihat bahwa pemotongan yang tepat akan menghasilkan 3 cluster, dimana pada cluster 1 pada dendogram berwarna biru yang terdiri dari 30 Kota , cluster 2 pada dendogram berwarna hijau yang terdiri dari 13 Kota, dan cluster 3 pada dendogram berwarna merah yang terdiri dari 1 Kota.
Setiap klaster memiliki karakteristik yang berbeda berdasarkan Indikator Gaya Hidup Sehat. Karakteristik dari setiap klaster dapat dilihat melalui nilai rata-rata masing masing variabel. Tinggi rendahnya nilai rata-rata setiap variabel pada masing-masing klaster dengan metode Average Linkage disajikan pada tabel berikut:
| CLuster | Harapan Hidup | Polusi | Tingkat Kebahagiaan | Biaya Gym Bulanan |
|---|---|---|---|---|
| 1 | 81.02667 | 39.29633 | 6.966667 | 44.21833 |
| 2 | 73.27692 | 73.65692 | 5.333077 | 32.89615 |
| 3 | 56.30000 | 61.83000 | 4.810000 | 24.28000 |
Anggota dalam tiap cluster dapat dilihat pada tabel berikut:
| Cluster | Anggota | Label |
|---|---|---|
| 1 | Amsterdam, Sydney, Vienna, Stockholm, Copenhagen, Helsinki, Fukuoka, Berlin, Barcelona, Vancouver, Melbourne, Toronto, Madrid, Seoul, Frankfurt, Geneva, Tel Aviv, Los angeles, Boston, Dublin, Tokyo, Chicago, Brussels, San Francisco, Paris, Zurich, London, Milan, Washington D.C., New York | Indikator Gaya Hidup Sehat Baik |
| 2 | Beijing, Bangkok, Buenos Aires, Jakarta, Istanbul, Cairo, Taipei, Mumbai, Hong Kong, Shanghai, Sao Paulo, Moscow, Mexico City | Indikator Gaya Hidup Sehat Sedang |
| 3 | Johannesburg | Indikator Gaya Hidup Sehat Buruk |
Klaster 1 mencakup kota-kota dengan indikator gaya hidup sehat yang terbaik. Kota-kota ini memiliki rata-rata harapan hidup yang tinggi yaitu 81,03 tahun, yang mencerminkan kualitas layanan kesehatan dan pola hidup sehat yang baik. Tingkat polusi di klaster ini relatif rendah sebesar 39,3 , menunjukkan bahwa kota-kota ini memiliki lingkungan yang bersih dan mendukung kesehatan masyarakat. Tingkat kebahagiaan yang tinggi sebesar 6,97 juga mengindikasikan bahwa penduduk di kota-kota ini merasa puas dengan kualitas hidup mereka. Selain itu, biaya keanggotaan gym bulanan yang tinggi sebesar 44,21 menunjukkan bahwa fasilitas olahraga di kota-kota ini mudah diakses dan menjadi bagian penting dari gaya hidup masyarakat.
Klaster 2 mencerminkan kota-kota dengan indikator gaya hidup sehat yang sedang. Harapan hidup di klaster ini adalah 73,28 tahun, lebih rendah dibandingkan Klaster 1, tetapi tetap mencerminkan kondisi hidup yang cukup baik. Namun, tingkat polusi yang tinggi sebesar 73,66 menunjukkan masalah lingkungan yang signifikan, yang dapat memengaruhi kualitas hidup masyarakat. Tingkat kebahagiaan di klaster ini berada pada level sedang sebesar 5,33, mencerminkan penduduk yang cukup puas tetapi tidak sebaik Klaster 1. Biaya keanggotaan gym bulanan yang sedang sebesar 32,99 menunjukkan bahwa akses terhadap fasilitas olahraga ada, tetapi mungkin tidak merata.
Klaster 3 menggambarkan kota-kota dengan indikator gaya hidup sehat yang buruk. Harapan hidup di klaster ini hanya 56,30 tahun, yang menunjukkan kualitas hidup yang rendah. Tingkat polusi sebesar 61,83 lebih baik dibandingkan Klaster 2 tetapi masih lebih tinggi dibandingkan Klaster 1. Tingkat kebahagiaan yang rendah sebesar 4,81 mencerminkan penduduk yang kurang puas dengan kondisi hidup mereka. Biaya keanggotaan gym bulanan yang rendah sebesar 24,28 menunjukkan bahwa akses terhadap fasilitas olahraga mungkin terbatas, sehingga penduduk kurang terfasilitasi untuk menjalani gaya hidup aktif. Klaster ini memerlukan perhatian lebih dalam intervensi kebijakan untuk meningkatkan kualitas hidup masyarakatnya.
4 KESIMPULAN
Berdasarkan analisis clustering dengan metode average linkage pada 44 kota di dunia dikelompokkan menjadi 3 klaster berdasarkan indikator gaya hidup sehat. Dimana klaster 1 terdiri dari 30 Kota, klaster 2 terdiri dari 13 Kota, dan klaster 3 terdiri dari 1 Kota. Klaster 1 terdiri dari kota-kota dengan kualitas hidup terbaik yang dapat dijadikan referensi untuk pengembangan kebijakan di klaster lain karena telah berhasil menciptakan lingkungan yang mendukung kesehatan masyarakat. Klaster 2 mencakup kota-kota dengan indikator gaya hidup sehat sedang, yang masih menghadapi tantangan signifikan seperti tingkat polusi yang tinggi. Sedangkan Klaster 3 merepresentasikan kota dengan kondisi gaya hidup sehat yang buruk, sehingga diperlukan kebijakan yang terarah untuk memperbaiki kualitas hidup pada klaster ini.
5 DAFTAR PUSTAKA
Analisis Cluster dengan Menggunakan Metode Average Linkage (2019). Neliti.
Haumahu, G., & Nanlohy, Y. W. (2020). Penerapan Analisis Klaster untuk Pengelompokkan Kabupaten/Kota di Provinsi Maluku Berdasarkan Konsumsi Kalori Penduduk. Journal of Statistics and Its Applications, 2(2), 51–59.
Hemelia, & Sumargo, B. (2019). Pengklasifikasian Pengguna Internet Lingkungan Pedesaan Menurut Jenjang Pendidikan di Indonesia Menggunakan Metode Cluster Average Linkage. Jurnal Statistika dan Aplikasinya, 3(1), 1–12.
Pawar, M. (2021). Healthy Life Style City 2021 Dataset.
Santoso, S. (2018). Mahir Statistik Multivariat dengan SPSS. Jakarta: Elex Media Komputindo.