1 Pendahuluan

1.1 Latar Belakang Kasus

Fasilitas kesehatan merupakan salah satu indikator penting dalam menggambarkan kualitas pelayanan kesehatan suatu wilayah. Setiap provinsi memiliki jumlah fasilitas kesehatan yang berbeda, baik berupa rumah sakit, puskesmas, klinik, maupun sarana kesehatan lainnya. Ketimpangan jumlah fasilitas kesehatan antardaerah dapat mencerminkan perbedaan tingkat akses layanan kesehatan, kapasitas pelayanan, serta kesiapan suatu provinsi dalam menghadapi kebutuhan kesehatan masyarakat.

Dengan banyaknya variasi jumlah fasilitas kesehatan antarprovinsi di Indonesia, diperlukan suatu metode analisis yang dapat mengelompokkan provinsi ke dalam kelompok yang memiliki karakteristik serupa. Pengelompokan ini membantu pemerintah, instansi kesehatan, dan pengambil kebijakan untuk memahami pola distribusi fasilitas kesehatan, mengidentifikasi provinsi dengan kebutuhan prioritas, serta menyusun strategi pemerataan pelayanan yang lebih efektif.

Namun, jumlah kelompok (cluster) yang tepat tidak diketahui sejak awal. Selain itu, karakteristik data yang bersifat multivariabel membuat interpretasi menjadi lebih kompleks jika hanya menggunakan analisis deskriptif. Oleh karena itu, penelitian ini menggunakan pendekatan analisis cluster untuk memahami struktur kemiripan antarprovinsi berdasarkan jumlah fasilitas kesehatan yang dimiliki masing-masing wilayah.

1.2 Latar Belakang Metode

Analisis clustering digunakan ketika tujuan penelitian adalah mengelompokkan objek berdasarkan karakteristik yang mereka miliki. Teknik ini sangat sesuai ketika peneliti tidak memiliki label atau kategori awal, namun ingin mengetahui apakah objek-objek tersebut secara alami membentuk kelompok tertentu.

Pada kasus ini, setiap provinsi memiliki profil fasilitas kesehatan yang berbeda-beda. Dengan clustering, provinsi yang memiliki pola fasilitas yang mirip akan masuk ke dalam kelompok yang sama. Hal ini memungkinkan identifikasi kelompok provinsi dengan fasilitas tinggi, sedang, maupun rendah secara objektif menggunakan ukuran jarak dan algoritma pengelompokan.

1.3 Tujuan yang Ingin Diraih

Secara ringkas, analisis ini bertujuan untuk:

  • Mengelompokkan provinsi-provinsi di Indonesia berdasarkan kesamaan jumlah fasilitas kesehatan.

  • Mengidentifikasi provinsi mana yang memiliki fasilitas kesehatan tinggi, sedang, maupun rendah.

  • Mengetahui struktur pengelompokan melalui pendekatan hierarchical clustering .

  • Memberikan interpretasi mengenai karakteristik tiap cluster yang terbentuk.

Dengan demikian, analisis clustering diharapkan membantu memberikan gambaran awal mengenai kesenjangan dan pemerataan fasilitas kesehatan di Indonesia.

1.4 Data

Data yang dianalisis berisi jumlah fasilitas kesehatan pada 34 provinsi di Indonesia. Variabel yang digunakan terdiri dari: - Rumah Sakit - Rumah Sakit Bersalin - Poliklinik - Puskesmas - Puskesmas Pembantu - Apotek

library(readxl)
## Warning: package 'readxl' was built under R version 4.4.3
DATA_SARANA_KESEHATAN <- read_excel("C:/Users/Admin/Downloads/DATA_SARANA_KESEHATAN.xlsx")
View(DATA_SARANA_KESEHATAN)

Data bersumber dari kumpulan data fasilitas kesehatan tingkat provinsi yang telah disediakan.

2 Tinjauan Pustaka Metode

2.1 Analisis Cluster Hirarki

Analisis cluster dengan metode hierarki merupakan teknik pengelompokan yang menyusun objek ke dalam struktur bertingkat berdasarkan kedekatan karakteristik antarobjek. Metode ini tidak menuntut penentuan jumlah cluster sejak awal sehingga sangat sesuai digunakan ketika jumlah kelompok yang akan terbentuk belum diketahui. Pendekatan ini umum diterapkan pada data yang memiliki pola pengelompokan berlapis atau mengandung subkelompok yang saling berhubungan.

Metode hierarki umumnya diterapkan pada dataset dengan jumlah observasi yang tidak terlalu besar karena prosesnya melibatkan perhitungan jarak untuk setiap pasangan objek, yang semakin berat seiring meningkatnya jumlah data. Hasil pengelompokan ditampilkan dalam bentuk dendrogram, yakni diagram berbentuk pohon yang menunjukkan hubungan antar objek serta tahapan penggabungan cluster mulai dari objek individual hingga akhirnya membentuk satu kelompok besar.

Karakteristik Umum Cluster

  • Homogen di dalam cluster yakni dalam satu cluster memiliki kemiripan tinggi terhadap variabel-variabel yang diukur.

  • Heterogen antar cluster.

  • Tidak ada label awal yaitu analisis cluster tidak menggunakan variabel target. Semua pengelompokan murni didasarkan pada pola kemiripan antar data.

  • Bersifat deskriptif, bukan inferensial yakni analisis cluster tidak menguji hipotesis, tetapi menjelaskan pola dan struktur dalam data.

2.2 Uji Asumsi Sample Representatif

Dengan uji Kaiser-Mayer-Olkin (KMO) dapat menguji apakah sampel cukup atau tidak. Hal ini penting karena menggunakan sampel yang mewakili populasi dapat memberikan hasil terbaik. Asumsi bahwa sampel mewakili populasi terpenuhi jika koefisien KMO > 0,5 \[ KMO = \frac{\sum_i \sum_j r_{ij}^2}{\sum_i \sum_j r_{ij}^2 + \sum_i \sum_j a_{ij}^2} \]

Keterangan:
- \(r_{ij}\) : koefisien korelasi sederhana antara variabel \(i\) dan \(j\)
- \(a_{ij}\) : koefisien korelasi parsial antara variabel \(i\) dan \(j\)

2.3 Uji Asumsi Non Multikolinieritas

Pemeriksaan melalui koefisien korelasi. Nilai korelasi > 0,8 akan menunjukkan masalah multikolinieritas.

\[ r = \frac{n\sum_{i=1}^{n} XY - \left( \sum_{i=1}^{n} X \right)\left( \sum_{i=1}^{n} Y \right)} {\sqrt{\left(n\sum_{i=1}^{n} X^2 - \left(\sum_{i=1}^{n} X\right)^2\right) \left(n\sum_{i=1}^{n} Y^2 - \left(\sum_{i=1}^{n} Y\right)^2\right)}} \]

Keterangan:
- \(r\) : koefisien korelasi dengan nilai \(-1 \le r \le 1\) - \(n\) : jumlah pasangan data X dan Y

2.4 Linkage

2.4.1 Single Linkage

Jarak antara dua cluster dihitung berdasarkan jarak minimum antar anggota. \[ d_{ij} = \min(d_{pj}, d_{qj}) \]

2.4.2 Complete Linkage

Jarak antara dua cluster dihitung berdasarkan jarak maksimum antar anggota. \[ d_{ij} = \max(d_{pj}, d_{qj}) \]

2.4.3 Average Linkage

Jarak merupakan rata-rata jarak seluruh objek pada dua cluster. \[ d_{ij} = \frac{1}{n_i n_j} \sum_{i=1}^{n_i} \sum_{j=1}^{n_j} \sqrt{ \sum_{k=1}^{p} (x_{ik} - y_{jk})^2 } \]

2.4.4 Ward’s Method

Menggunakan jumlah kuadrat dalam cluster (Error Sum of Squares / ESS). \[ ESS = \sum_{k=1}^{K} \left[ \sum_{i=1}^{n_k} \sum_{j=1}^{p} X_{ijk}^2 - \frac{1}{n_k} \sum_{j=1}^{p} \left( \sum_{i=1}^{n_k} X_{ijk} \right)^2 \right] \]

2.4.5 Centroid Method

Jarak dihitung berdasarkan jarak antar pusat (centroid) masing-masing cluster. Centroid untuk cluster ke-i: \[ C_i = \frac{1}{M} \sum_{j=1}^{M} X_j \]

2.5 Jarak

2.5.1 Euclidean

Jarak yang paling sering digunakan karena mudah dipahami dan berdasarkan prinsip phytagoras. Jarak Euclidean digunakan ketika antar variabel tidak berkorelasi

\[ d(x_i, x_j) = \sqrt{ \sum_{k=1}^{p} (x_{ik} - x_{jk})^2 } \]

2.5.2 Manhattan

Perhitungan jarak yang paling mudah, tetapi dapat menghasilkan cluster yang tidak valid jika variabel yang digunakan memiliki korelasi yang tinggi.

\[ d(x_i, x_j) = \sum_{k=1}^{p} |x_{ik} - x_{jk}| \]

2.5.3 Mahalanobis

Jarak yang dapat digunakan ketika terdapat korelasi antar variabel.

\[ d(x_i, x_j) = \sqrt{(x_i - x_j)^T S^{-1} (x_i - x_j)} \]

3 Source Code

3. 1 Impor Library

library(readxl)
library(cluster)
library(factoextra)
## Warning: package 'factoextra' was built under R version 4.4.3
## Loading required package: ggplot2
## Warning: package 'ggplot2' was built under R version 4.4.3
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
library(dendextend)
## Warning: package 'dendextend' was built under R version 4.4.3
## 
## ---------------------
## Welcome to dendextend version 1.19.1
## Type citation('dendextend') for how to cite the package.
## 
## Type browseVignettes(package = 'dendextend') for the package vignette.
## The github page is: https://github.com/talgalili/dendextend/
## 
## Suggestions and bug-reports can be submitted at: https://github.com/talgalili/dendextend/issues
## You may ask questions at stackoverflow, use the r and dendextend tags: 
##   https://stackoverflow.com/questions/tagged/dendextend
## 
##  To suppress this message use:  suppressPackageStartupMessages(library(dendextend))
## ---------------------
## 
## Attaching package: 'dendextend'
## The following object is masked from 'package:stats':
## 
##     cutree
library(knitr)
## Warning: package 'knitr' was built under R version 4.4.3
library(clValid)
## Warning: package 'clValid' was built under R version 4.4.3
library(psych)
## Warning: package 'psych' was built under R version 4.4.3
## 
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
## 
##     %+%, alpha
library(GPArotation)
## 
## Attaching package: 'GPArotation'
## The following objects are masked from 'package:psych':
## 
##     equamax, varimin
library(ggplot2)
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.4.3
## Warning: package 'tibble' was built under R version 4.4.1
## Warning: package 'tidyr' was built under R version 4.4.3
## Warning: package 'readr' was built under R version 4.4.2
## Warning: package 'purrr' was built under R version 4.4.3
## Warning: package 'dplyr' was built under R version 4.4.3
## Warning: package 'stringr' was built under R version 4.4.3
## Warning: package 'forcats' was built under R version 4.4.3
## Warning: package 'lubridate' was built under R version 4.4.3
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ lubridate 1.9.4     ✔ tibble    3.2.1
## ✔ purrr     1.0.4     ✔ tidyr     1.3.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ psych::%+%()    masks ggplot2::%+%()
## ✖ psych::alpha()  masks ggplot2::alpha()
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(car)
## Warning: package 'car' was built under R version 4.4.3
## Loading required package: carData
## Warning: package 'carData' was built under R version 4.4.3
## 
## Attaching package: 'car'
## 
## The following object is masked from 'package:dplyr':
## 
##     recode
## 
## The following object is masked from 'package:purrr':
## 
##     some
## 
## The following object is masked from 'package:psych':
## 
##     logit

Mengaktifkan package yang dibutuhkan terlebih dahulu

3.2 Impor Data

DATA_SARANA_KESEHATAN <- read_excel("C:/Users/Admin/Downloads/DATA_SARANA_KESEHATAN.xlsx")
View(DATA_SARANA_KESEHATAN)

Data_Clustering <- DATA_SARANA_KESEHATAN[2:7]
Data_Clustering
## # A tibble: 34 × 6
##    `Rumah Sakit` `Rumah Sakit Bersalin` Poliklinik Puskesmas
##            <dbl>                  <dbl>      <dbl>     <dbl>
##  1            64                    225        258       395
##  2           199                    441        800       661
##  3            54                    139        127       294
##  4            55                    207        329       272
##  5            36                    151        103       231
##  6            65                    248        195       403
##  7            20                      5         49       190
##  8            53                    238        307       350
##  9            21                     25         25        63
## 10            23                     35         76        88
## # ℹ 24 more rows
## # ℹ 2 more variables: `Puskesmas Pembantu` <dbl>, Apotek <dbl>
View(Data_Clustering)

Memanggil data dalam bentuk xlsx menggunakan function read_excel yang disimpan dalam data

3.3 Uji Sampel Representatif

kmo <- KMO(Data_Clustering)
kmo
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = Data_Clustering)
## Overall MSA =  0.9
## MSA for each item = 
##          Rumah Sakit Rumah Sakit Bersalin           Poliklinik 
##                 0.94                 0.91                 0.92 
##            Puskesmas   Puskesmas Pembantu               Apotek 
##                 0.86                 0.84                 0.94

Melakukan uji sampel representatif dengan fungsi KMO

3.4 Uji Non Multikolinieritas

korelasi <- cor(Data_Clustering, method = 'pearson')
korelasi
##                      Rumah Sakit Rumah Sakit Bersalin Poliklinik Puskesmas
## Rumah Sakit            1.0000000            0.9618700  0.9565052 0.9330942
## Rumah Sakit Bersalin   0.9618700            1.0000000  0.9690787 0.9342288
## Poliklinik             0.9565052            0.9690787  1.0000000 0.9284192
## Puskesmas              0.9330942            0.9342288  0.9284192 1.0000000
## Puskesmas Pembantu     0.7934684            0.7834446  0.7714473 0.8998482
## Apotek                 0.9600062            0.9589805  0.9499034 0.9235252
##                      Puskesmas Pembantu    Apotek
## Rumah Sakit                   0.7934684 0.9600062
## Rumah Sakit Bersalin          0.7834446 0.9589805
## Poliklinik                    0.7714473 0.9499034
## Puskesmas                     0.8998482 0.9235252
## Puskesmas Pembantu            1.0000000 0.7967605
## Apotek                        0.7967605 1.0000000

Uji non-multikolinearitas menggunakan fungsi cor() untuk mengetahui korelasi antar variabel dan metode yang digunakan adalah pearson.

3.5 Standarisasi

datastandarisasi <- scale(Data_Clustering)
datastandarisasi <- as.matrix(datastandarisasi)

Standarisasi ke dalam bentuk zscore dengan fungsi scale() kemudian disimpan dalam datastandarisasi.

3.6 Menghitung Jarak

euc <- dist(datastandarisasi, method = "euclidean")

Menghitung jarak euclidean menggunakan fungis dist() dengan argumen didalamnya adalah datastandarisasi yang merupakan data hasil standarisasi dan menggunakan metode euclidean.

3.7 Koefisien Korelasi Cophenetic

d1 <- dist(Data_Clustering)

Menghitung jarak antar observasi dengan menggunakan fungsi dist() dan disimpan dalam d1.

3.8 Korelasi dengan Single Linkage

hiers <- hclust(dist(Data_Clustering), method = "single")
hc_single <- hclust(d1, "single")
d2 <- cophenetic(hc_single)
cor_single <- cor(d1, d2)
cor_single
## [1] 0.9641489

Metode single linkage menggabungkan dua kelompok berdasarkan jarak terpendek antara dua anggota dari kelompok tersebut. Matriks jarak awal (d1) dibandingkan dengan matriks jarak cophenetic dendrogram (d2) menggunakan korelasi Pearson.

3.8 Korelasi dengan Average Linkage

hierave <- hclust(dist(Data_Clustering), method = "ave")
hc_ave <- hclust(d1, "average")
d3 <- cophenetic(hc_ave)
cor_average <- cor(d1,d3)
cor_average
## [1] 0.9398026

Metode average linkage menggabungkan kelompok berdasarkan rata-rata jarak antar anggota kelompok. Matriks jarak awal (d1) dibandingkan dengan matriks cophenetic distance dendrogram (d3).

3.8 Korelasi dengan Complete Linkage

hiercomp <- hclust(dist(Data_Clustering), method = "complete")
hc_complete <- hclust(d1, "complete")
d4 <- cophenetic(hc_complete)
cor_comp <- cor(d1,d4)
cor_comp
## [1] 0.8401089

Metode complete linkage menggabungkan kelompok berdasarkan jarak maksimum antara anggota kelompok. Korelasi antara matriks jarak asli (d1) dan matriks cophenetic distance dendrogram (d4) dihitung dan disimpan dalam corcomp.

3.9 Indeks Validitas

inval <- clValid(datastandarisasi,
                nClust = 2:7,
                clMethods = "hierarchical",
                validation = "internal",
                metric = "euclidean",
                method = "single")
## Warning in clValid(datastandarisasi, nClust = 2:7, clMethods = "hierarchical",
## : rownames for data not specified, using 1:nrow(data)
summary(inval)
## 
## Clustering Methods:
##  hierarchical 
## 
## Cluster sizes:
##  2 3 4 5 6 7 
## 
## Validation Measures:
##                                  2       3       4       5       6       7
##                                                                           
## hierarchical Connectivity   4.4536  7.2159  9.7159 11.7159 15.1448 17.5738
##              Dunn           0.6497  0.9032  0.6219  0.5359  0.3589  0.3490
##              Silhouette     0.7993  0.6725  0.6351  0.6253  0.2632  0.2633
## 
## Optimal Scores:
## 
##              Score  Method       Clusters
## Connectivity 4.4536 hierarchical 2       
## Dunn         0.9032 hierarchical 3       
## Silhouette   0.7993 hierarchical 2

Validasi internal pada proses clustering dengan pendekatan hierarchical clustering digunakan untuk menilai seberapa baik kualitas kelompok yang terbentuk. Pada tahap ini, evaluasi dilakukan dengan beberapa metrik validasi yang dihitung berdasarkan jarak antar objek menggunakan jarak Euclidean serta pengelompokan yang dibangun dengan metode single linkage. Setelah proses perhitungan, diperoleh ringkasan yang memperlihatkan performa setiap jumlah cluster menurut masing-masing metrik. Selain itu, pemilihan jumlah cluster optimal ditunjukkan berdasarkan nilai terbaik dari setiap ukuran validasi. Untuk memberikan gambaran yang lebih jelas tentang bagaimana nilai metrik berubah ketika jumlah cluster bervariasi, dibuat pula visualisasi dalam bentuk grafik sehingga pola perubahan kualitas clustering dapat diamati dengan lebih mudah.

3.10 Analisis Clustering dengan Metode Single Linkage dan Jarak Euclidean

plot(hc_single, 
     labels = DATA_SARANA_KESEHATAN$Provinsi, 
     hang = 1, 
     col = "black",
     main = "Dendrogram (Single Linkage)", 
     xlab = "Provinsi", 
     ylab = "Jarak")

anggota <- data.frame(
  Provinsi = DATA_SARANA_KESEHATAN$Provinsi,
  Cluster  = cutree(hc_single, k = 3)
)
anggota
##                Provinsi Cluster
## 1                  ACEH       1
## 2        SUMATERA UTARA       2
## 3        SUMATERA BARAT       1
## 4                  RIAU       1
## 5                 JAMBI       1
## 6      SUMATERA SELATAN       1
## 7              BENGKULU       1
## 8               LAMPUNG       1
## 9  KEP. BANGKA BELITUNG       1
## 10            KEP. RIAU       1
## 11          DKI JAKARTA       1
## 12           JAWA BARAT       3
## 13          JAWA TENGAH       3
## 14        DI YOGYAKARTA       1
## 15           JAWA TIMUR       3
## 16               BANTEN       1
## 17                 BALI       1
## 18  NUSA TENGGARA BARAT       1
## 19  NUSA TENGGARA TIMUR       1
## 20     KALIMANTAN BARAT       1
## 21    KALIMANTAN TENGAH       1
## 22   KALIMANTAN SELATAN       1
## 23     KALIMANTAN TIMUR       1
## 24     KALIMANTAN UTARA       1
## 25       SULAWESI UTARA       1
## 26      SULAWESI TENGAH       1
## 27     SULAWESI SELATAN       1
## 28    SULAWESI TENGGARA       1
## 29            GORONTALO       1
## 30       SULAWESI BARAT       1
## 31               MALUKU       1
## 32         MALUKU UTARA       1
## 33          PAPUA BARAT       1
## 34                PAPUA       1
clus_hier <- eclust(datastandarisasi, 
                    FUNcluster = "hclust", 
                    k = 3,
                    hc_method = "single", 
                    graph = TRUE)
## Warning: The `<scale>` argument of `guides()` cannot be `FALSE`. Use "none" instead as
## of ggplot2 3.3.4.
## ℹ The deprecated feature was likely used in the factoextra package.
##   Please report the issue at <https://github.com/kassambara/factoextra/issues>.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
fviz_dend(clus_hier, rect = TRUE, cex = 0.5)

hasil_cluster <- aggregate(Data_Clustering,
                           by = list(Cluster = clus_hier$cluster),
                           FUN = mean)

hasil_cluster
##   Cluster Rumah Sakit Rumah Sakit Bersalin Poliklinik Puskesmas
## 1       1    41.23333               88.900    121.600   234.400
## 2       2   199.00000              441.000    800.000   661.000
## 3       3   294.33333             1099.667   1334.333  1042.333
##   Puskesmas Pembantu   Apotek
## 1              610.2  189.900
## 2             1887.0  740.000
## 3             1990.0 1889.333

4 Hasil dan Pembahasan

4.1 Uji Sampel Representatif

Uji sampel representatif dengan uji Kaiser Mayer Olkin (KMO) yang bertujuan untuk menguji apakahh sampel telah representatif atau mewakili populasi. Dilihat dari output yang didapatkan, nilai uji KMO pada Rumah Sakit sebesar 0.94, Rumah Sakit Bersalin sebesar 0.91, Poliklinik sebesar 0.92, Puskesmas sebesar 0.86, Puskesmas Pembantu sebesar 0.84 dan Apotek sebesar 0.94. Uji KMO pada masing-masing variabel bernilai lebih dari 0.5 sehingga dapat disimpulkan bahwa sampel telah representatif.

4.2 Uji Non Multikolinieritas

Hasil uji korelasi antar variabel menunjukkan bahwa seluruh variabel fasilitas kesehatan memiliki koefisien korelasi di atas 0.60. Kondisi ini secara teknis mengindikasikan adanya hubungan antarvariabel yang cukup kuat. Namun, hal tersebut bukan merupakan pelanggaran asumsi dalam analisis clustering, khususnya hierarchical clustering berbasis jarak. Variabel-variabel fasilitas kesehatan secara alamiah memang saling berkaitan karena provinsi dengan kapasitas layanan kesehatan besar cenderung memiliki banyak jenis fasilitas secara bersamaan. Oleh karena itu, korelasi yang tinggi merupakan karakteristik alami dari data, bukan indikasi masalah multikolinearitas yang menyebabkan analisis tidak dapat dilanjutkan. Dengan demikian, proses clustering tetap dapat dilakukan karena tidak ada asumsi metodologis yang dilanggar.

4.3 Perbandingan Koefisien Cophenetic

Berdasarkan hasil perhitungan korelasi cophenetic antara matriks jarak asli dengan matriks jarak hasil dendrogram, diperoleh nilai korelasi cophenetic untuk setiap metode linkage sebagai berikut: - Single linkage → nilai korelasi tertinggi - Complete linkage → nilai korelasi menengah - Average linkage → nilai korelasi paling rendah

Nilai korelasi cophenetic menggambarkan seberapa baik struktur jarak dalam dendrogram merepresentasikan jarak asli antar objek. Semakin tinggi nilai korelasinya, semakin baik metode tersebut mempertahankan struktur asli data.

Hasil ini menunjukkan bahwa metode single linkage paling mampu menggambarkan pola kedekatan antar provinsi berdasarkan karakteristik fasilitas kesehatan, karena memiliki kesesuaian jarak tertinggi antara dendrogram dan jarak asli. Sementara itu, average linkage menghasilkan korelasi yang lebih rendah, menandakan bahwa pendekatan rata-rata jarak antar cluster kurang efisien dalam mempertahankan pola jarak asli pada dataset ini. Complete linkage berada di posisi tengah, mengindikasikan performa moderat dalam merepresentasikan hubungan antar objek.

Secara keseluruhan, single linkage menjadi metode yang paling baik dalam merepresentasikan struktur data untuk kasus jumlah fasilitas kesehatan antar provinsi, berdasarkan penilaian menggunakan korelasi cophenetic. Namun, pemilihan metode tetap perlu disesuaikan dengan interpretasi cluster yang dihasilkan, karena single linkage cenderung menghasilkan chaining effect meskipun memiliki korelasi tinggi.

4.4 Indeks Validitas

Berdasarkan hasil validasi internal, ketiga metrik yang digunakan yakni Connectivity, Dunn Index, dan Silhouette menunjukkan kecenderungan yang tidak sepenuhnya konsisten dalam menentukan jumlah cluster optimal. Connectivity dan Silhouette memberikan nilai terbaik pada dua cluster, menandakan bahwa ketika data dibagi menjadi dua kelompok, struktur cluster terlihat cukup kompak dan memiliki tingkat kesesuaian yang baik. Namun, Dunn Index justru mencapai nilai tertinggi pada tiga cluster, yang menunjukkan bahwa pemisahan antar kelompok lebih jelas dan jarak antar cluster lebih optimal ketika data dibagi menjadi tiga bagian.

Perbedaan ini karena setiap metrik memiliki perspektif evaluasi yang berbeda terhadap kualitas clustering. Oleh karena itu, penentuan jumlah cluster tidak hanya bergantung pada satu ukuran, melainkan dipadukan dengan konteks dan tujuan analisis. Dalam kasus pemerataan fasilitas kesehatan antar provinsi, pemilihan tiga cluster memberikan gambaran yang lebih kaya karena mampu menunjukkan gradasi kondisi fasilitas kesehatan—mulai dari provinsi dengan kondisi sangat baik, sedang, hingga kurang memadai. Struktur tiga cluster juga lebih mendukung interpretasi kebijakan dan analisis ketimpangan dibandingkan pembagian yang hanya menghasilkan dua kelompok besar.

Dengan mempertimbangkan faktor tersebut, jumlah cluster yang dipilih adalah k = 3, karena pemisahan yang dihasilkan lebih bermakna secara substantif dan memberikan informasi yang lebih detail untuk analisis situasi fasilitas kesehatan di berbagai provinsi.

4.5 Analisis Clustering dengan Metode Single Linkage dan Jarak Euclidean

Hasil pengelompokan dengan tiga cluster memberikan gambaran yang jelas mengenai perbedaan kondisi fasilitas kesehatan antar provinsi. Cluster pertama merupakan kelompok dengan rata-rata jumlah fasilitas kesehatan yang paling rendah dibandingkan dua cluster lainnya. Nilai rata-rata rumah sakit, rumah sakit bersalin, poliklinik, dan puskesmas pada cluster ini menunjukkan bahwa provinsi-provinsi di dalamnya berada pada tingkat penyediaan sarana kesehatan yang relatif minimal. Cluster ini menggambarkan wilayah yang membutuhkan perhatian lebih besar dalam pemerataan layanan kesehatan karena kapasitas fasilitasnya masih jauh di bawah rata-rata nasional.

Berbeda dengan itu, cluster kedua hanya beranggotakan satu provinsi, yaitu Sumatera Utara, yang memiliki tingkat fasilitas kesehatan pada kategori menengah. Rata-rata jumlah rumah sakit, poliklinik, hingga puskesmas di provinsi ini berada di antara cluster pertama dan cluster ketiga. Posisi yang berada tepat di tengah ini menunjukkan bahwa Sumatera Utara memiliki ketersediaan fasilitas kesehatan yang lebih baik daripada wilayah dalam cluster pertama, namun belum mencapai kapasitas sebesar provinsi-provinsi utama di cluster tiga.

Cluster ketiga berisi tiga provinsi dengan angka fasilitas kesehatan paling tinggi, yaitu Jawa Barat, Jawa Tengah, dan Jawa Timur. Ketiga provinsi ini konsisten menempati nilai tertinggi untuk seluruh jenis fasilitas—rumah sakit, rumah sakit bersalin, poliklinik, maupun puskesmas. Rata-rata yang demikian besar menunjukkan bahwa wilayah-wilayah ini merupakan pusat layanan kesehatan dengan kapasitas terbesar di Indonesia. Tingginya angka fasilitas kesehatan di cluster ini juga sangat wajar mengingat jumlah penduduk yang besar, tingkat urbanisasi, serta statusnya sebagai pusat kegiatan ekonomi dan pendidikan.

Secara keseluruhan, hasil clustering ini menghasilkan pemisahan kelompok yang bermakna secara substantif. Cluster pertama menggambarkan wilayah dengan fasilitas kesehatan terbatas, cluster kedua berada pada posisi menengah dengan satu provinsi sebagai representasi, sedangkan cluster ketiga mencerminkan provinsi-provinsi dengan infrastruktur kesehatan yang paling lengkap. Pemisahan seperti ini memberikan dasar interpretasi yang kuat bahwa kondisi fasilitas kesehatan di Indonesia memang memiliki ketimpangan yang cukup jelas, dan tiga cluster yang terbentuk menunjukkan lapisan perbedaan yang realistis dan relevan untuk analisis pemerataan layanan kesehatan.

5 Penutup

5.1 Kesimpulan

Berdasarkan hasil analisis clustering dengan metode hierarchical clustering menggunakan average linkage dan jarak Euclidean, data fasilitas kesehatan antar provinsi terbagi menjadi tiga kelompok yang menunjukkan perbedaan kapasitas sarana kesehatan yang cukup jelas. Cluster pertama berisi provinsi-provinsi dengan jumlah fasilitas kesehatan yang relatif rendah sehingga memerlukan peningkatan pemerataan layanan. Cluster kedua yang hanya diwakili oleh Provinsi Sumatera Utara menunjukkan kondisi fasilitas kesehatan pada tingkat menengah. Adapun cluster ketiga yang beranggotakan Jawa Barat, Jawa Tengah, dan Jawa Timur merupakan kelompok dengan kapasitas fasilitas kesehatan terbesar. Hasil ini menegaskan adanya ketimpangan ketersediaan sarana kesehatan antar wilayah dan mengindikasikan perlunya perhatian khusus pada provinsi yang berada di kelompok terbawah.

5.2 Saran

Berdasarkan hasil pengelompokan, pemerintah maupun pemangku kebijakan disarankan untuk memprioritaskan peningkatan fasilitas kesehatan pada provinsi-provinsi yang masuk dalam cluster pertama agar kesenjangan layanan dapat dikurangi. Selain itu, penelitian selanjutnya dapat menggunakan variabel yang lebih luas serta metode clustering lain sebagai pembanding untuk memperoleh gambaran lebih komprehensif mengenai pemerataan sarana kesehatan di Indonesia.

Daftar Pustaka

HMPS Statistik AFMIPA UNM. (2022, 9 Desember). Clustering (Metode Hierarki). Diakses dari https://hmpsstatistikafmipaunm.com/2022/12/09/clustering-metode-hierarki/

Wibowo, R. A. (2020). Simulasi pemilihan metode analisis cluster hirarki agglomerative terbaik antara average linkage dan Ward pada data yang mengandung masalah multikolinearitas (Skripsi). Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Lampung, Bandar Lampung.

Laeli, S. (2014). Analisis cluster dengan average linkage method dan Ward’s method untuk data responden nasabah asuransi jiwa unit link (Skripsi). Program Studi Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Negeri Yogyakarta.