- 1 PENDAHULUAN
- 2 TINJAUAN PUSTAKA
- 3 SOURCE CODE
- 4 HASIL DAN PEMBAHASAN
- 5 KESIMPULAN
- 6 DAFTAR PUSTAKA
Library:
> # install.packages("knitr")
> # install.packages("rmarkdown")
> # install.packages("prettydoc")
> # install.packages("equatiomatic")1 PENDAHULUAN
1.1 Latar Belakang
Seiring dengan meningkatnya kesadaran masyarakat mengenai gaya hidup sehat, berbagai kota di dunia mulai menciptakan lingkungan yang menunjang masyarakat untuk mendapatkan kualitas hidup yang baik. Sebagaimana definisi sehat yang dikemukakan oleh Badan Kesehatan Dunia bahwa kesehatan merupakan kondisi sejahtera fisik, mental, dan sosial yang utuh, bukan hanya bebas dari penyakit atau kelemahan fisik. Kesehatan fisik maupun mental sangat penting bagi setiap individu. Hal ini karena kondisi kesehatan yang tidak baik mengakibatkan manusia tidak bisa mengatur pola hidup dirinya sendiri serta pembangunan di daerahnya (Indrayogi, Priyono, & Asyisya, 2022).
Individu yang memiliki kesehatan baik itu fisik maupun mental memiliki kemampuan untuk menahan diri, menunjukkan kecerdasan, berperilaku dengan menenggang perasaan orang lain, serta memiliki sikap hidup yang bahagia (Dewi. K, 2012). Dengan kesehatan mental dan fisik yang baik, maka setiap individu akan memiliki tingkat harapan hidup yang tinggi. Faktor-faktor seperti tingkat harapan hidup, indeks polusi, dan tingkat kebahagiaan penduduk merupakan faktor penting yang memengaruhi gaya hidup sehat di suatu wilayah.
Adanya perbedaan geografis, ekonomi, dan kebijakan publik dapat menjadi pengaruh yang signifikan bagi gaya hidup sehat di setiap kota. Salah satu metode yang dapat digunakan yaitu analisis cluster untuk mengelompokkan objek berdasarkan kesamaan karakteristiknya. Analisis cluster akan mengidentifikasi kelompok kota yang memiliki kesamaan karakteristik, sehingga informasi ini dapat digunakan untuk membentuk kebijakan yang berfokus pada peningkatan gaya hidup sehat setiap kota di dunia.
1.2 Rumusan Masalah
Berdasarkan penelitian yang dilakukan, terdapat tiga rumusan masalah yaitu:
- Ada berapa banyak cluster dan anggota cluster yang terbentuk berdasarkan faktor-faktor yang memengaruhi gaya hidup sehat?
- Bagaimana karakteristik dari masing-masing cluster yang terbentuk?
- Kota mana yang memiliki gaya hidup sehat yang tinggi?
1.3 Tujuan
Terdapat tiga tujuan dari penelitian ini, tujuan tersebut yaitu:
- Untuk mengetahui banyak cluster dan anggota cluster yang terbentuk berdasarkan faktor-faktor yang memengaruhi gaya hidup sehat.
- Untuk mengetahui karakteristik dari masing-masing cluster yang terbentuk.
- Untuk mengetahui kota yang memiliki gaya hidup sehat tinggi.
2 TINJAUAN PUSTAKA
2.1 Analisis Cluster
Analisis cluster merupakan teknik multivariat yang digunakan untuk membentuk kelompok-kelompok yang beranggotakan objek dengan karakteristik yang sama. Analisis cluster akan mengelompokkan sejumlah n satuan pengamatan ke dalam k kelompok dimana k < n. Analisis ini bertujuan untuk menciptakan cluster yang baik dengan memaksimalkan kesamaan objek dalam cluster (homogenitas internal yang tinggi) dan memaksimalkan perbedaan cluster (heterogenitas eksternal yang tinggi).
Analisis cluster terbagi menjadi 2 yaitu metode hirarki dan non-hirarki. Pemilihan metode analisis cluster disesuaikan dengan kebutuhan peneliti karena memiliki kegunaan masing-masing. Metode hirarki dapat digunakan jika banyaknya kelompok atau cluster tidak diketahui, lalu pengelompokkan objek dilakukan berdasarkan kemiripan sifat atau karakteristiknya. Sedangkan metode non-hirarki digunakan jika banyak kelompok telah diketahui di awal penelitian.
2.2 Asumsi Analisis Cluster
2.2.1 Uji Sampel Representatif
Sampel representatif yaitu keadaan saat suatu sampel yang diambil oleh peneliti dapat mempresentasikan atau telah cukup mewakilkan populasi yang diamati (Supranto, 2004). Asumsi ini dapat dilakukan dengan uji kaise mayer olkin (KMO) dengan rumus definisi sebagai berikut: \[ KMO = \frac{\sum_{i=1}^n \, \sum_{j \neq i} \, r_{ij}^2}{\sum_{i=1}^n \quad \sum_{j \neq i} \, r_{ij}^2 + \sum_{i=1}^n \, \sum_{j \neq i} \, a_{ij}^2} \quad \text{dengan} \quad a_{ij} = -\frac{v_{ij}}{\sqrt{v_{ii}v_{jj}}} \] di mana:
\(n\) = banyak variabel.
\(r_{ij}\) = korelasi antara variabel
\(x_i\) dan \(x_j\).
\(a_{ij}\) = korelasi parsial antara
variabel \(x_i\) dan \(x_j\).
\(v_{ij}\) = invers matriks korelasi
antara variabel \(x_i\) dan \(x_j\).
Hasil perhitungan uji KMO yang memiliki nilai pada interval 0.5 sampai 1, maka sampel dikatakan representatif atau sampel dapat mewakili populasi.
2.2.2 Uji Non-Multikolinearitas
Uji non-multikolinearitas digunakan untuk memeriksa apakah terdapat hubungan linier yang sempurna atau hampir sempurna antar variabel bebas dalam model. Jika nilai mutlak dari koefisien korelasi lebih dari 0.8, maka dapat dikatakan terjadi masalah multikolinearitas pada data (Gujarati, 1995). Jika nilai mutlak dari koefisien korelasi kurang dari 0.8, maka data telah memenuhi asumsi non-multikolinearitas.
2.3 Jarak Euclidian
Jarak euclidian (euclidian distance) merupakan perhitungan jarak yang menggunakan prinsip phytagoras, yaitu perhitungan jarak dari dua buah titik dalam euclidian space untuk mempelajari hubungan antara sudut dan jarak. Syarat menggunakan jarak euclidian yaitu variabel tidak saling berkorelasi, skala pengukuran data metrik (interval dan rasio), dan variabel kontinu. Rumus pengukuran jarak euclidian sebagai berikut: \[ d(x, y) = \sqrt{\sum_{i=1}^n (x_i - y_i)^2} \] di mana:
\(n\) = jumlah dimensi dalam data
\(x\) = koordinat titik pertama di ruang \(n\)-dimensi \((x_1,x_2,… x_n)\)
\(y\) = koordinat titik kedua di ruang \(n\)-dimensi \((y_1,y_2,… y_n)\)
2.4 Standarisasi Variabel Data
Standarisasi variabel dalam data diperlukan saat data dari setiap variabel memiliki satuan yang berbeda secara signifikan. Proses standarisasi dapat dilakukan dengan transformasi data dalam bentuk normal baku yaitu Z~N(0,1). Rumus standarisasi Z score yaitu:
\[ z = \frac{x - \mu}{\sigma} \]
dengan:
\(z\) = nilai standar (z-score)
\(x\) = nilai data ke-i
\(\mu\) = nilai rata-rata variabel
\(\sigma\) = standar deviasi variabel
2.5 Metode Hierarchical Cluster
Metode cluster hirarki (Hierarchical Cluster) merupakan metode analisis cluster di mana jumlah kelompok atau cluster tidak diketahui dan pengelompokkan dilakukan secara terstruktur berdasarkan kemiripan sifat atau karakteristik objek. Teknik yang digunakan yaitu teknik penggabungan (agglomerative method) dan teknik pemisahan (divisive method).
Teknik penggabungan dilakukan dengan menggabungkan dua cluster yang memiliki kemiripan menjadi sebuah cluster baru menggunakan metode yang sesuai, salah satunya yaitu metode linkage. Metode linkage terbagi menjadi 3 yaitu single linkage yang mengelompokkan objek berdasarkan jarak terdekat terlebih dahulu dengan rumus \(d_{(ij)k}=min(d_{ik} ;d_{jk} )\), complete linkage yang mengelompokkan objek berdasarkan jarak terjauh terlebih dahulu dengan rumus \(d_{(ij)k}=max(d_{ik} ;d_{jk} )\), dan average linkage yang mengelompokkan objek berdasarkan nilai rata-rata jarak seluruh individu terlebih dahulu dengan rumus \(d_{(ij)k}=average(d_{ik} ;d_{jk} )\), di mana \(d_{(ij)k}\) merupakan jarak antar kelompok (i, j) dan k, \(d_{ik}\) merupakan jarak (minimum, maksimum, atau rata-rata) antara kelompok i dengan k, \(d_{jk}\) merupakan jarak (minimum, maksimum, atau rata-rata) antara kelompok j dengan k. Teknik penggabungan dapat juga dilakukan dengan metode lainnya seperti metode ward, metode median, dan metode centroid.
Teknik pemisahan dilakukan dengan memisahkan objek yang paling tinggi nilai ketidakmiripannya. Hasil dari analisis cluster dapat dibentuk dalam sebuah diagram yang disebut dendogram yang menggambarkan proses dari terbentuknya cluster. Garis mendatar yang terletak di atas dendogram menunjukkan skala dari tingkat kemiripan, semakin kecil skala pada dendogram maka semakin tinggi kesamaan objek (Supranto, 2004).
2.6 Koefisien Korelasi Cophenetic
Koefisien korelasi cophenetic merupakan ukuran yang dapat digunakan untuk menguji validitas cluster yang telah terbentuk. Koefisien ini merupakan perbandingan jarak antar objek pada dendogram hasil clustering dengan jarak antar objek asli dalam matriks jarak euclidian. Rumus perhitungan koefisien korelasi cophenetic yaitu:
\[ r_c = \frac{\sum_{i<j}(d_{ij} - \bar{d})(d_{c_{ij}} - \bar{d_c})}{\sqrt{\sum_{i<j}(d_{ij} - \bar{d})^2 \sum_{i<j}(d_{c_{ij}} - \bar{d_c})^2}} \] di mana:
\(r_c\) = koefisien korelasi cophenetic
\(d_{ij}\) = jarak euclidian antara objek \(i\) dan \(j\)
\(\bar{d}\) = rata-rata jarak euclidian antara objek \(i\) dan \(j\)
\(d_{c_{ij}}\) = jarak cophenetic antara objek \(i\) dan \(j\)
\(\bar{d_c}\) = rata-rata jarak cophenetic antara objek \(i\) dan \(j\)
2.7 Indeks Validitas Cluster
Validitas cluster digunakan untuk mengetahui apakah hasil clustering dapat menjelaskan dan mewakili populasi yang diamati secara umum. Validitas cluster juga dapat dilakukan untuk menentukan jumlah kelompok optimum, yaitu kelompok yang memiliki jarak terpendek antar objek dalam suatu cluster. Validitas ini dapat dihitung dengan beberapa indeks yaitu:
2.7.1 Indeks Connectivity (C)
Pada indeks connectivity, semakin kecil nilai indeks maka jumlah cluster yang terbentuk semakin optimal. Berikut merupakan rumus perhitungan indeks connectivity: \[ Conn(C) = \frac{S - S_{min}}{S_{max} - S_{min}} \] di mana:
\(S\) = jumlah jarak pada semua pasangan objek amatan dari kelompok yang sama, dengan jumlah pasangan tersebut
\(S_{min}\) = jumlah dari jarak terkecil jika semua pasangan contoh berada pada kelompok yang berbeda
\(S_{max}\) = jumlah dari jarak terbesar semua pasangan
2.7.2 Indeks Global Silhouette (Gsu)
Pada indeks global silhouette, semakin besar nilai indeks maka jumlah cluster yang terbentuk semakin optimal. Berikut merupakan rumus perhitungan indeks global silhouette: \[ GS_u = \frac{1}{c} \sum_{i=1}^c S(i) \] di mana:
\(S(i)\) = Silhouette kelompok ke-i
\(c\) = jumlah kelompok atau cluster
2.7.3 Indeks Dunn (D)
Pada indeks dunn, nilai terbesar dari D diambil sebagai jumlah optimum kelompok atau cluster. Berikut merupakan rumus perhitungan indeks dunn: \[ D = \min_{1 \leq i \leq n} \left\{ \min_{1 \leq j \leq n, j \neq i} \frac{d(c_i, c_j)}{\max_{1 \leq k \leq n} d'(c_k)} \right\} \]
di mana:
\(d(c_i, c_j)\) = jarak antar kelompok \(c_i\) dan \(c_j\)
\(d'(c_k)\) = jarak dalam kelompok \(c_k\)
2.8 Data
Data yang digunakan dalam penelitian ini merupakan data sekunder. Data ini berisi mengenai faktor-faktor yang memengaruhi gaya hidup sehat 44 kota di dunia. Data ini dikumpulkan pada tahun 2021 oleh tim firma riset pasar dan analisis data berbasis internet internasional bernama YouGov di Lenstore. Berikut merupakan variabel yang digunakan dalam penelitian:
\(X_1\) = Harapan Hidup
\(X_2\) = Indeks Polusi
\(X_3\) = Level Kebahagiaan Penduduk
3 SOURCE CODE
3.1 Library
> # Library
> library(psych)
> library(GPArotation)
> library(clValid)
> library(ggplot2)
> library(cluster)
> library(factoextra)
> library(tidyverse)
> library(car)
> library(readxl)Untuk support proses analisis, maka perlu mengakifkan packages yang dibutuhkan terlebih dahulu untuk analisis cluster. Kegunaan dari setiap packages tersebut yaitu:
- psych = berisi beberapa fungsi analisis statistik.
- GPArotation = untuk melakukan rotasi faktor.
- clValid = untuk validasi analisis cluster.
- ggplot2 = untuk membuat grafik hasil analisis.
- cluster = berisi fungsi-fungsi analisis cluster.
- tidyverse = untuk efisiensi data.
- car (companion to applied regression) = untuk pengujian asumsi.
- readxl = untuk impor dan membaca data dari Excel.
3.2 Impor Data
> data <- read_excel("C:/Users/User/Downloads/healthy_lifestyle_city_2021.xlsx")
> data <-data.frame(data)
> library(rmarkdown)
> paged_table(data)Menginput data dengan memanggil dalam bentul excel menggunakan function “read_excel” yang disimpan dalam data. Terdapat argumen head = TRUE yang berarti kolom paling atas pada data merupakan nama variabel.
3.3 Analisis Cluster
3.3.1 Statistika Deskriptif
> #Statistik Deskriptif
> statdes <- summary(data)
> statdes
City Life.expectancy.years. Pollution.Index.score.
Length:44 Min. :56.30 Min. :13.08
Class :character 1st Qu.:75.40 1st Qu.:30.01
Mode :character Median :80.40 Median :50.98
Mean :78.17 Mean :50.51
3rd Qu.:81.80 3rd Qu.:66.35
Max. :83.20 Max. :91.74
Happiness.levels
Min. :3.570
1st Qu.:5.870
Median :6.900
Mean :6.435
3rd Qu.:7.175
Max. :7.800 Melakukan analisis statistika deskriptif menggunakan perintah “summary” yang dapat menunjukkan rangkuman ukuran pemusatan dan penyebaran data dari setiap variabel penelitian.
3.3.2 Uji Asumsi
3.3.2.1 Uji Sampel Representatif
> # Uji Sampel Representatif
> kmo <- KMO(data[,2:4])
> kmo
Kaiser-Meyer-Olkin factor adequacy
Call: KMO(r = data[, 2:4])
Overall MSA = 0.69
MSA for each item =
Life.expectancy.years. Pollution.Index.score. Happiness.levels
0.73 0.73 0.63 Pengujian sampel representatif dilakukan menggunakan fungsi KMO() dengan argumen data [,2:4] yang menunjukkan bahwa kolom kedua sampai kolom keempat merupakan data yang perlu di analisis.
3.3.2.2 Uji Non-Multikolinearitas
> korelasi <- cor(data[,2:4], method = 'pearson')
> korelasi
Life.expectancy.years. Pollution.Index.score.
Life.expectancy.years. 1.0000000 -0.5701785
Pollution.Index.score. -0.5701785 1.0000000
Happiness.levels 0.7245871 -0.7336673
Happiness.levels
Life.expectancy.years. 0.7245871
Pollution.Index.score. -0.7336673
Happiness.levels 1.0000000Pengujian non-multikolinearitas dilakukan menggunakan fungsi cor() dengan argumen menggunakan metode pearson pada data [,2:4] yang menunjukkan bahwa kolom kedua sampai kolom keempat merupakan data yang perlu di analisis.
3.3.3 Standarisasi Variabel Data
> datastand <- scale(data[,2:4])
> datastand
Life.expectancy.years. Pollution.Index.score. Happiness.levels
[1,] 0.5702845 -0.89101875 1.01392048
[2,] 0.7399560 -1.07621332 0.79196774
[3,] 0.5325798 -1.50985072 0.86258906
[4,] 0.6833988 -1.40519531 0.92312163
[5,] 0.3063512 -1.33193653 1.21569570
[6,] 0.4194655 -1.70323571 1.37711587
[7,] 0.9473322 -1.19451943 -0.57001499
[8,] 0.4571703 -0.50515882 0.64063632
[9,] 0.7588084 0.66789177 -0.03531066
[10,] 0.6645464 -1.19451943 0.80205650
[11,] 0.7399560 -1.11989557 0.79196774
[12,] -0.5231536 1.58885934 -1.32667207
[13,] -0.7682345 1.18889368 -0.44894986
[14,] -0.4288917 0.09683727 -0.46912738
[15,] 0.6645464 -0.57705253 0.80205650
[16,] 0.7588084 0.09865737 -0.03531066
[17,] -1.8239679 1.54153690 -1.16525189
[18,] 0.5891369 0.33253945 -0.57001499
[19,] 0.4571703 -0.57932765 0.64063632
[20,] 0.8342179 -1.05846740 1.13498561
[21,] 0.7022512 -0.14705532 0.69108013
[22,] -0.6551203 0.86355188 -1.31658331
[23,] -1.4092155 1.87597917 -2.30528188
[24,] -0.5231536 -0.05423053 -1.32667207
[25,] 0.1178274 0.70793384 0.50948243
[26,] -2.0501965 1.47100826 -2.89043002
[27,] 0.1178274 -1.06847792 0.50948243
[28,] 0.4383179 -0.47512727 0.66081384
[29,] 0.9473322 -0.34908576 -0.57001499
[30,] 0.1178274 -0.32678961 0.50948243
[31,] -0.5231536 0.77118211 -0.93321039
[32,] -0.5231536 1.22347547 -1.32667207
[33,] 0.4194655 0.55322585 0.42877234
[34,] 0.1178274 -0.14341514 0.50948243
[35,] 0.6833988 0.66379656 0.22699712
[36,] -0.8059393 1.33177106 -0.06557695
[37,] 0.8342179 -1.51076076 1.13498561
[38,] 0.4194655 0.38213701 0.73143517
[39,] -4.1239585 0.51500387 -1.63942366
[40,] 0.8530703 0.75889647 -0.05548819
[41,] 0.1178274 -0.51562436 0.50948243
[42,] 0.1178274 0.31160837 0.50948243
[43,] -1.6354441 0.32389400 -0.90294411
[44,] -0.3346298 1.46827812 0.02522190
attr(,"scaled:center")
Life.expectancy.years. Pollution.Index.score. Happiness.levels
78.17500 50.51182 6.43500
attr(,"scaled:scale")
Life.expectancy.years. Pollution.Index.score. Happiness.levels
5.304370 21.976887 0.991202
> rownames(datastand) <- 1:nrow(datastand)Melakukan standarisasi yang disimpan dalam datastand menggunakan fungsi scale() ke dalam bentuk Zscore.
3.3.4 Jarak Euclidian
> jarak <- dist(datastand, method = "euclidean")
> jarak
1 2 3 4 5 6 7
2 0.33518419
3 0.63818167 0.48583295
4 0.53424415 0.35864914 0.19329597
5 0.55207113 0.65799152 0.45554047 0.48283677
6 0.90241546 0.91557062 0.56118663 0.60382088 0.42037411
7 1.65623946 1.38275022 1.52440407 1.53085013 1.90223625 2.08056581
8 0.54865635 0.65495969 1.03167603 0.97007371 1.01833248 1.40684470 1.47687283
9 1.88855215 1.93045267 2.36642465 2.28516282 2.40188418 2.78070995 1.94679877
10 0.38194805 0.14065815 0.34715013 0.24371398 0.56416725 0.80594678 1.40090968
11 0.36115926 0.04368226 0.44727762 0.31905484 0.64227708 0.88622695 1.37969945
12 3.58102999 3.63134860 3.93820280 3.93467962 3.96014653 4.36312844 3.23760030
13 2.87361423 2.99085688 3.27039349 3.27400632 3.20630072 3.62071262 2.93912980
14 2.04294973 2.08149308 2.29768195 2.33058992 2.32821938 2.71451410 1.88991337
15 0.39031582 0.50492561 0.94402958 0.83715747 0.93233635 1.28803979 1.53095177
16 1.45460855 1.43703378 1.85599072 1.78489550 1.95354378 2.31450231 1.41200431
17 4.04951405 4.15415823 4.35619356 4.39675138 4.29697806 4.69309882 3.93959583
18 2.00157480 1.96528057 2.33451379 2.29304696 2.45748056 2.82214236 1.56850650
19 0.49928674 0.59140876 0.95959512 0.90168437 0.95909321 1.34424443 1.44374383
20 0.33519640 0.35617620 0.60739799 0.43342009 0.59995226 0.80397312 1.71415637
21 0.82165849 0.93537936 1.38398519 1.27949791 1.35495453 1.72403892 1.65759061
22 3.16407694 3.18667761 3.43401565 3.45761845 3.48669380 3.87287339 2.71309335
23 4.75308345 4.78824956 5.02690952 5.05645429 5.06272411 5.45113810 4.24174844
24 2.71554689 2.66993056 2.83306678 2.88832932 2.96382264 3.30427269 2.00876008
25 1.73661297 1.91050334 2.28369704 2.22627116 2.16687552 2.58021548 2.33938482
26 5.26213314 5.27573139 5.44439213 5.50347767 5.50182559 5.86404322 4.63406320
27 0.70047625 0.68330211 0.70108044 0.77739761 0.77697416 1.11655308 1.36721591
28 0.56130671 0.68519437 1.05841918 0.99694364 1.02928673 1.42186298 1.51379003
29 1.71601511 1.55779213 1.88990720 1.84783256 2.13672996 2.42974977 0.84543367
30 0.88177647 1.01413896 1.30243519 1.28605105 1.24281887 1.65480428 1.61441876
31 2.78385295 2.82569552 3.08910656 3.10457017 3.11913186 3.51409756 2.48157647
32 3.33842271 3.37233582 3.65766446 3.66432129 3.69889747 4.09446434 2.92942957
33 1.56556290 1.69991089 2.11122635 2.03702122 2.04594242 2.44764667 2.08106534
34 1.00900267 1.15626743 1.47100307 1.44328017 1.39529979 1.81019710 1.71994567
35 1.74628001 1.83030732 2.26968412 2.18296053 2.25890246 2.64485835 2.03917322
36 2.82844504 2.98723349 3.27535339 3.26904235 3.15819377 3.57690447 3.11617751
37 0.68439589 0.56158530 0.40643112 0.28067205 0.56314781 0.51739078 1.73776595
38 1.31280994 1.49437747 1.89989835 1.81685479 1.78475522 2.18304442 2.11145952
39 5.57252654 5.66580090 5.66069360 5.77620008 5.58484906 5.88751210 5.45748050
40 1.98640955 2.02450101 2.46835852 2.38112553 2.50726800 2.88139937 2.02224055
41 0.77465875 0.88379970 1.13366216 1.13238903 1.09573900 1.50139736 1.52127952
42 1.38039386 1.54689721 1.90116202 1.85428782 1.79875463 2.21435543 2.03022507
43 3.16474670 3.23659577 3.34365886 3.42071607 3.31677228 3.67839391 3.01449073
44 2.71342523 2.86654328 3.21286282 3.17796408 3.10954764 3.52913260 3.01466817
8 9 10 11 12 13 14
2
3
4
5
6
7
8
9 1.38706076
10 0.73775295 2.04417332
11 0.69337597 1.97000725 0.10656969
12 3.03582760 2.03941707 3.69990730 3.66352748
13 2.35767446 1.66565315 3.04935015 3.02407390 0.99520524
14 1.54242683 1.38741903 2.11639258 2.10641985 1.72348427 1.14374294
15 0.27245195 1.50331480 0.61746689 0.54814865 3.26087273 2.59546611 1.80710898
16 0.95524021 0.56923440 1.54349451 1.47296172 2.35196569 1.92134657 1.26444914
17 3.55721618 2.95139903 4.18915388 4.18182223 1.31164545 1.32363846 2.12555499
18 1.47811711 0.65357348 2.05430660 1.99682519 1.84066830 1.60948956 1.04981715
19 0.07416883 1.45032623 0.66897106 0.62855600 3.08745396 2.41151854 1.57285735
20 0.83228392 2.08700646 0.39766863 0.36099860 3.86141874 3.18234775 2.34592267
21 0.43686081 1.09315189 1.05400117 0.97878400 2.93024582 2.29057995 1.63861201
22 2.63462859 1.91810755 3.23509078 3.21345437 0.73728414 0.93350411 1.16499450
23 4.22275361 3.36341672 4.83570079 4.81530464 1.35100729 2.08060367 2.73821914
24 2.24380780 1.95767753 2.69116619 2.68695411 1.64308987 1.54136912 0.87583655
25 1.26647097 0.84217545 2.00095721 1.95135909 2.13502920 1.39105017 1.27672155
26 4.76031026 4.08499827 5.30182268 5.29696013 2.18885537 2.77197410 3.22175133
27 0.67058432 1.92941334 0.63276203 0.68519027 3.29298668 2.60757066 1.61695343
28 0.04079753 1.37615261 0.76723786 0.72381839 3.02234484 2.33587456 1.53491466
29 1.31540645 1.16434241 1.63624755 1.57865437 2.54764391 2.30720755 1.45017852
30 0.40517959 1.30270763 1.06651599 1.04683285 2.72984081 2.00024850 1.19834830
31 2.25101632 1.56854048 2.87850049 2.85444568 0.90741840 0.68487655 0.82401414
32 2.79633933 1.90255458 3.43348453 3.40227398 0.36538387 0.91195222 1.41900733
33 1.08003986 0.58623791 1.80389005 1.74182673 2.24558512 1.60782500 1.31689952
34 0.51304329 1.16870656 1.22037763 1.19178688 2.60443752 1.86513940 1.14642929
35 1.26044970 0.27296289 1.94535010 1.87188358 2.17379802 1.68519161 1.42941328
36 2.33848120 1.70002559 3.04914083 3.02255594 1.31773406 0.41086541 1.35280425
37 1.18227806 2.47422853 0.48952913 0.52850938 4.18447854 3.51636737 2.59865267
38 0.89272615 0.88583776 1.59715296 1.53703618 2.56525143 1.85870830 1.49748331
39 5.21786792 5.14178616 5.64030801 5.67822366 3.77051387 3.62384303 3.89845805
40 1.49638295 0.13256808 2.14167173 2.06417924 2.04908246 1.72288682 1.50094843
41 0.36395666 1.45202154 0.91945627 0.91213246 2.86551420 2.14687679 1.27737550
42 0.89412727 0.91356115 1.62877938 1.58620474 2.32673376 1.57268170 1.14136126
43 2.72928634 2.56974066 3.24076579 3.25573033 1.73691476 1.30628773 1.30212152
44 2.21362497 1.35642524 2.94827337 2.90538754 1.37029134 0.70064800 1.46086156
15 16 17 18 19 20 21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 1.08011710
17 3.81463330 3.16692308
18 1.64791515 0.60778117 2.76388436
19 0.26280513 1.00376967 3.60040137 1.52137879
20 0.60941813 1.64748830 4.37230679 2.21404422 0.78493378
21 0.44568487 0.76890638 3.56077173 1.35394494 0.49946834 1.02232052
22 2.88192573 2.05570361 1.35969472 1.54515836 2.67391103 3.45289391 2.62573736
23 4.46916156 3.60721078 1.25838768 3.06378358 4.26501600 5.04771340 4.18678225
24 2.49308233 1.82603817 2.06510243 1.39975395 2.25988144 2.98508082 2.36253196
25 1.42677654 1.03868857 2.69633048 1.23627194 1.33768347 2.00615127 1.05144444
26 5.01984451 4.23385896 1.74137682 3.69411937 4.79157540 5.56076113 4.79805304
27 0.79120176 1.43870111 3.65889073 1.83038166 0.60960882 0.95108874 1.10614128
28 0.28551290 0.95735693 3.53827464 1.47986876 0.10779733 0.84962427 0.42214696
29 1.41933674 0.72244298 3.40717847 0.77001088 1.32625286 1.85014708 1.30047756
30 0.66867993 0.94268831 3.17268781 1.34987487 0.44286611 1.19992582 0.63783489
31 2.49790296 1.70350811 1.52951223 1.24960332 2.29388424 3.07693180 2.23228506
32 3.03051444 2.13921866 1.34882818 1.61353249 2.84278670 3.62070146 2.72970612
33 1.21529213 0.73291140 2.92415208 1.03685439 1.15281630 1.80784730 0.79947912
34 0.75666552 0.87536005 3.06828411 1.27042518 0.56778046 1.31976900 0.61199852
35 1.36775552 0.62759404 2.99927881 0.86824242 1.32952419 1.95278843 0.93445665
36 2.56100052 1.99246598 1.51316520 1.78861937 2.39718194 3.13762744 2.24367913
37 1.00570435 1.99135800 4.65548765 2.52286492 1.11987221 0.45229336 1.44019437
38 0.99252034 0.88510647 3.15826271 1.31340049 0.96647834 1.55248626 0.60136580
39 5.48481465 5.15634896 2.56292127 4.83634120 5.23287447 5.89547888 5.40017315
40 1.59865064 0.66723917 3.00177196 0.71845595 1.55954159 2.17264694 1.18357902
41 0.62311696 1.04163245 3.28743311 1.45149207 0.36934135 1.09505623 0.71440330
42 1.08361410 0.86775817 2.84394589 1.17808551 0.96235228 1.66780610 0.76478841
43 3.00144769 2.55655317 1.25976221 2.24937263 2.75272314 3.48759385 2.86836641
44 2.40524480 1.75360546 1.90806782 1.58036521 2.27999376 2.99703574 2.03169670
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.60349417
24 0.92727641 2.33848079
25 1.98901511 3.40867834 2.08883088
26 2.18911727 0.95773503 2.66524901 4.10390238
27 2.76852005 4.35023973 2.19340322 1.77641176 4.76536695
28 2.62636027 4.21174607 2.24759464 1.23500969 4.75304956 0.69114423
29 2.14376026 3.67632726 1.67982079 1.72356703 4.20502630 1.53977854 1.33787953
30 2.31276393 3.88676581 1.96382494 1.03472345 4.41495292 0.74168831 0.38421272
31 0.41583912 1.97186777 0.91439494 1.57994288 2.57921022 2.42416340 2.24022938
32 0.38348661 1.47259770 1.27770600 2.01198984 2.19965257 3.00588927 2.78563797
33 2.07299375 3.54525078 2.08305522 0.34847414 4.23776582 1.65149108 1.05437603
34 2.22394845 3.78585678 1.94686256 0.85134898 4.34351183 0.92506278 0.48543618
35 2.05284585 3.50155086 2.09409159 0.63373268 4.22403670 1.84402925 1.24314485
36 1.34424421 2.38251607 1.89508023 1.25427711 3.08987990 2.63538107 2.31099569
37 3.72366470 5.32338626 3.16602213 2.41393358 5.78055047 1.04884874 1.20586584
38 2.36238745 3.84672446 2.30537475 0.49637903 4.51694347 1.49817630 0.86037482
39 3.50122122 3.10893071 3.65891201 4.75896695 2.60373769 5.01178202 5.20440367
40 1.96874384 3.38044115 2.04232124 0.92863937 4.11982478 2.04916350 1.48590805
41 2.41538635 3.99681443 1.99880069 1.22355820 4.49515754 0.55285356 0.35672870
42 2.05830167 3.56398852 1.97892851 0.39632547 4.19570498 1.38008629 0.86288372
43 1.19304771 2.10397219 1.24888499 2.28394313 2.33195002 2.64718892 2.71739997
44 1.50626996 2.59850006 2.04479610 1.00863727 3.38292813 2.62189949 2.18592078
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 1.36157629
31 1.88394250 1.92295633
32 2.28206203 2.48709504 0.59948426
33 1.44581659 0.93377024 1.67063838 2.10222509
34 1.37684178 0.18337447 1.82447452 2.37712218 0.76341884
35 1.31560622 1.17512976 1.67731388 2.04521323 0.35014273 1.02530958
36 2.48066489 1.98364858 1.07098811 1.29694125 1.53366580 1.83308824 1.65828756
37 2.06623104 1.51863665 3.36558394 3.92151292 2.22053990 1.66556406 2.36133205
38 1.58338325 0.80176400 1.95216076 2.41499203 0.34767252 0.64533218 0.63517766
39 5.25435766 4.82899169 3.67833660 3.68314285 4.99215352 4.80042291 5.15910359
40 1.22525417 1.42775633 1.63234166 1.93021610 0.68177838 1.29380838 0.34297279
41 1.37154219 0.18883475 2.03668605 2.60898221 1.11352613 0.37220923 1.33817141
42 1.51324473 0.63839798 1.64421020 2.14798081 0.39481473 0.45502350 0.72367502
43 2.68969827 2.34356540 1.19923846 1.49197265 2.45941359 2.29941024 2.60179427
44 2.30229121 1.91350303 1.20003189 1.38675408 1.25253075 1.74263618 1.31312073
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 3.49448898
38 1.74317241 1.97937730
39 3.76209425 6.03196334 5.12653161
40 1.75516377 2.56299185 0.97427366 5.22868531
41 2.14404012 1.37650501 0.97274048 4.86546391 1.57612729
42 1.49156633 2.05560182 0.38108117 4.75940272 1.02948557 0.82723273
43 1.55083143 3.69030431 2.62625994 2.60223535 2.66460361 2.40285261 2.25145743
44 0.49901031 3.38710097 1.49903280 4.24720949 1.38577336 2.09167272 1.33308313
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 1.96550885Melakukan perhitungan jarak menggunakan jarak euclidian yang disimpan dalam jarak dengan fungsi dist dan argumen datastand atau data hasil standarisasi.
3.3.5 Koefisien Korelasi Cophenetic
> #Single Linkage
> hiers <- hclust(dist(data[,2:4]), method = "single")
> #korelasi cophenetic
> d1 <- dist(data[,2:4])
> hc1 <- hclust(d1, "single")
> d2 <- cophenetic(hc1)
> cors <- cor(d1,d2)
> cors
[1] 0.4767819
>
> #Average Linkage
> hierave <- hclust(dist(data[,2:4]), method = "ave")
> #korelasi cophenetic
> hc2 <- hclust(d1, "ave")
> d3 <- cophenetic(hc2)
> corave <- cor(d1,d3)
> corave
[1] 0.7412541
>
> #Complete Linkage
> hiercomp <- hclust(dist(data[,2:4]), method = "complete")
> #korelasi cophenetic
> hc3 <- hclust(d1, "complete")
> d4 <- cophenetic(hc3)
> corcomp <- cor(d1,d4)
> corcomp
[1] 0.7162027
>
> #Centorid Linkage
> hiercen <- hclust(dist(data[,2:4]), method = "centroid")
> #korelasi cophenetic
> hc4 <- hclust(d1, "centroid")
> d5 <- cophenetic(hc4)
> corcen <- cor(d1,d5)
> corcen
[1] 0.713197
>
> #Ward
> hierward <- hclust(dist(data[,2:4]), method = "ward.D")
> #korelasi cophenetic
> hc5 <- hclust(d1,"ward.D")
> d6 <- cophenetic(hc5)
> corward <- cor(d1,d6)
> corward
[1] 0.7182406
>
> KorCop<-data.frame(cors,corave,corcomp,corcen,corward)
> KorCop
cors corave corcomp corcen corward
1 0.4767819 0.7412541 0.7162027 0.713197 0.7182406Melakukan analisis menggunakan metode hierarchical clustering fungsi hclust(). Fungsi tersebut berisikan argumen data fungsi dist dan metode pilihan. Melakukan perhitungan jarak dengan fungsi dist() yang disimpan dalam d1, menjalankan fungsi hclust() dengan d1 dan metode pilihan yang disimpan dalam hc, menghitung matriks cophenetic yang disimpan dalam d, dan menghitung korelasi cophenetic dengan argumen d1 dan d yang disimpan dalam nama sesuai dengan metode yang digunakan. Setelah itu hasil analisis dibuat menjadi satu data frame yang bernama KorCop.
3.3.6 Indeks Validitas
> inval <- clValid(datastand, 2:4, clMethods = "hierarchical", validation = "internal", metric = "euclidean", method = "average")
> summary(inval)
Clustering Methods:
hierarchical
Cluster sizes:
2 3 4
Validation Measures:
2 3 4
hierarchical Connectivity 3.0540 6.5147 11.6016
Dunn 0.4371 0.2982 0.3501
Silhouette 0.5343 0.4939 0.4644
Optimal Scores:
Score Method Clusters
Connectivity 3.0540 hierarchical 2
Dunn 0.4371 hierarchical 2
Silhouette 0.5343 hierarchical 2
> optimalScores(inval)
Score Method Clusters
Connectivity 3.0539683 hierarchical 2
Dunn 0.4370570 hierarchical 2
Silhouette 0.5342717 hierarchical 2
> plot(inval)
Melakukan pengujian validitas menggunakan fungsi clValid dan
ggplot2 dengan data standar, metode hirearchical,
validasi internal, metric euclidian, dan metode
average yang disimpan dalam inval. Lalu menampilkan rangkuman
data menggunakan summary(), menghitung skor optimal dengan
optimalScores(), dan membuat plot.
3.3.7 Metode Average Linkage
> hirave <- hclust(dist(scale(data[,2:4])), method = "average")
> hirave
Call:
hclust(d = dist(scale(data[, 2:4])), method = "average")
Cluster method : average
Distance : euclidean
Number of objects: 44
> plot(hirave, labels(data$City), hang = 1, col = "blue", main = "Cluster Dendogram", sub = " ", xlab = "City", ylab = "Jarak")>
> anggotaave <- data.frame(id = data$City, cutree(hirave, k = 2))
> anggotaave
id cutree.hirave..k...2.
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 1
13 Bangkok 1
14 Buenos Aires 1
15 Toronto 1
16 Madrid 1
17 Jakarta 1
18 Seoul 1
19 Frankfurt 1
20 Geneva 1
21 Tel Aviv 1
22 Istanbul 1
23 Cairo 1
24 Taipei 1
25 Los Angeles 1
26 Mumbai 1
27 Boston 1
28 Dublin 1
29 Tokyo 1
30 Chicago 1
31 Hong Kong 1
32 Shanghai 1
33 Brussels 1
34 San Francisco 1
35 Paris 1
36 Sao Paulo 1
37 Zurich 1
38 London 1
39 Johannesburg 2
40 Milan 1
41 Washington, D.C. 1
42 New York 1
43 Moscow 1
44 Mexico City 1
> clus_hier <- eclust(datastand, FUNcluster = "hclust", k = 2, 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 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1
> aggregate(data,list(idclus),mean)
Group.1 City Life.expectancy.years. Pollution.Index.score. Happiness.levels
1 1 NA 78.68372 50.2486 6.472791
2 2 NA 56.30000 61.8300 4.810000Melakukan analisis cluster menggunakan hcclust() dengan argumen data standarisasi dan metode average yang disimpan dalam hirave. Menampilkan plot dan menerapkan metode perhitungan yang disimpan dalam clus_hier. Setelah itu, menampilkan diagram visualisasi dendogram dengan fungsi fviz_dens() dan mengampilkan rata-rata menggunakan fungsi aggregate().
4 HASIL DAN PEMBAHASAN
4.1 Statistika Deskriptif
Berdasarkan hasil perhitungan, didapatkan hasil analisis statistika deskriptif sebagai berikut:
> statdes
City Life.expectancy.years. Pollution.Index.score.
Length:44 Min. :56.30 Min. :13.08
Class :character 1st Qu.:75.40 1st Qu.:30.01
Mode :character Median :80.40 Median :50.98
Mean :78.17 Mean :50.51
3rd Qu.:81.80 3rd Qu.:66.35
Max. :83.20 Max. :91.74
Happiness.levels
Min. :3.570
1st Qu.:5.870
Median :6.900
Mean :6.435
3rd Qu.:7.175
Max. :7.800 Dari hasil analisis, diperoleh bahwa rata-rata harapan hidup dari 44 kota di dunia yaitu 78.17 dengan harapan hidup terendah sebesar 56.30 di kota Johannesburg dan harapan hidup tertinggi sebesar 83.20 di kota Tokyo dan Fukuoka. Rata-rata indeks polusi yaitu 50.51 dengan indeks polusi terendah sebesar 13.08 di kota Helsinki dan indeks polusi tertinggi sebesar 91.74 di kota Cairo. Lalu rata-rata level kebahagiaan yaitu 6.435 dengan level kebahagiaan terendah sebesar 3.570 di kota Mumbai dan level kebahagiaan tertinggi sebesar 7.8 di kota Helsinki.
4.2 Uji Asumsi
4.2.1 Uji Sampel Representatif
Berdasarkan hasil perhitungan, didapatkan hasil uji sampel representatif sebagai berikut:
> kmo
Kaiser-Meyer-Olkin factor adequacy
Call: KMO(r = data[, 2:4])
Overall MSA = 0.69
MSA for each item =
Life.expectancy.years. Pollution.Index.score. Happiness.levels
0.73 0.73 0.63 Dilihat dari hasil, nilai uji KMO pada variabel harapan hidup, indeks polusi, dan level kebahagiaan masing-masing bernilai lebih dari 0.5 yaitu 0.73, 0.73, dan 0.63 secara berturut-turut. Sehingga sampel telah representatif atau mewakili populasi yang diamati.
4.2.2 Uji Non-Multikolinearitas
Berdasarkan hasil perhitungan, didapatkan hasil uji non-multikolinearitas sebagai berikut:
> korelasi
Life.expectancy.years. Pollution.Index.score.
Life.expectancy.years. 1.0000000 -0.5701785
Pollution.Index.score. -0.5701785 1.0000000
Happiness.levels 0.7245871 -0.7336673
Happiness.levels
Life.expectancy.years. 0.7245871
Pollution.Index.score. -0.7336673
Happiness.levels 1.0000000Dilihat dari hasil, nilai uji non-multikolinearitas menunjukkan bahwa nilai mutlak dari korelasi antar variabel kurang dari 0.8, sehingga tidak terjadi multikolinearitas antar variabel dan asumsi non-multikolinearitas terpenuhi.
4.3 Standarisasi
Berikut merupakan hasil standarisasi data dalam bentuk Zscore dari data yang telah memenuhi asumsi.
4.4 Koefisien Korelasi Cophenetic
Berikut merupakan hasil perhitungan koefisien korelasi cophenetic:
> KorCop<-data.frame(cors,corave,corcomp,corcen,corward)
> KorCop
cors corave corcomp corcen corward
1 0.4767819 0.7412541 0.7162027 0.713197 0.7182406Metode dengan nilai korelasi mendekati 1 yang akan dipilih sebagai metode terbaik. Dilihat dari hasil, nilai korelasi yang paling mendekati 1 yaitu metode average linkage sebesar 0.74125. Sehingga berdasarkan output, metode terbaik yang terpilih adalah metode average linkage.
4.5 Indeks Validitas Cluster
Berikut merupakan hasil perhitungan indeks validitas cluster :
> summary(inval)
Clustering Methods:
hierarchical
Cluster sizes:
2 3 4
Validation Measures:
2 3 4
hierarchical Connectivity 3.0540 6.5147 11.6016
Dunn 0.4371 0.2982 0.3501
Silhouette 0.5343 0.4939 0.4644
Optimal Scores:
Score Method Clusters
Connectivity 3.0540 hierarchical 2
Dunn 0.4371 hierarchical 2
Silhouette 0.5343 hierarchical 2 Berdasarkan hasil perhitungan, ketiga indeks memiliki jumlah cluster optimum sebanyak 2 cluster. Sehingga berdasarkan indeks connectivity, dunn, dan silhouette terpilih banyak cluster sejumlah 2 sebagai cluster optimal.
4.6 Metode Average Linkage
Berikut merupakan hasil perhitungan menggunakan metode average linkage :
> aggregate(data,list(idclus),mean)
Group.1 City Life.expectancy.years. Pollution.Index.score. Happiness.levels
1 1 NA 78.68372 50.2486 6.472791
2 2 NA 56.30000 61.8300 4.810000Dilihat dari hasil, terdapat beberapa informasi mengenai cluster yaitu:
Cluster 1: variabel harapan hidup dan level kebahagiaan memiliki karakteristik yang tinggi, sedangkan variabel indeks polusi memiliki karakteristik yang rendah.
Cluster2: variabel harapan hidup dan level kebahagiaan memiliki karakteristik yang rendah, sedangkan variabel indeks polusi memiliki karakteristik yang tinggi.
Berdasarkan informasi tersebut dapat dikatakan bahwa cluster 1 merupakan kelompok dengan gaya hidup sehat yang tinggi dan cluster 2 merupakan kelompok dengan gaya hidup sehat yang rendah.
5 KESIMPULAN
Setelah melakukan analisis cluster, telah terbentuk jumlah cluster beserta anggota yang terbentuk sesuai karakteristiknya masing-masing. Terbentuk 2 cluster berdasarkan faktor yang memengaruhi gaya hidup sehat. Faktor-faktor tersebut yaitu harapan hidup, indeks polusi, dan level kebahagiaan. Pada cluster 1 variabel harapan hidup dan level kebahagiaan memiliki karakteristik yang tinggi, sedangkan variabel indeks polusi memiliki karakteristik yang rendah. Pada cluster 2 variabel harapan hidup dan level kebahagiaan memiliki karakteristik yang rendah, sedangkan variabel indeks polusi memiliki karakteristik yang tinggi. Berdasarkan hasil analisis maka dapat disimpulkan bahwa cluster 2 yang merupakan kota dengan gaya hidup sehat yang rendah beranggotakan kota Johannesburg. Sedangkan kota lainnya termasuk dalam cluster 1 yang merupakan kota dengan gaya hidup sehat yang tinggi.
6 DAFTAR PUSTAKA
Supranto & Johanes. (2004). Analisis Multivariat Arti & Interpretasi. Jakarta: PT. Rineka Cipta.
Dewi, K. (2012). KESEHATAN MENTAL. Semarang: UPT UNDIP Press Semarang.
Indrayogi, Priyono, A., & Asyisya, P. (2022). Peningkatan Kualitas Hidup Lansia Melalui Pemberdayaan Lansia Produktif, Gaya Hidup Sehat dan Aktif. Indonesian Community Service and Empowerment Journal (IComSE), Vol. 3 Issue 1, 185-191.
Gujarati, D. N. 1995. Ekonometrika Dasar. Jakarta: Erlangga.