Library:
> # install.packages("knitr")
> # install.packages("rmarkdown")
> # install.packages("prettydoc")
> # install.packages("equatiomatic")Kesejahteraan suatu negara dapat dilihat melalui berbagai indicator seperti sosial, ekonomi, juga kesehatan. Variabel seperti angka kematian anak, harapan hidup, tingkat inflasi, pendapatan per kapita memberikan gambaran penting tentang kondisi umum masyarakat serta kualitas hidup di suatu negara. Keberagaman kondisi antar negara seringkali menyulitkan perumusan kebijakan yang efektif secara global. Dalam situasi seperti ini, mengelompokkan negara-negara berdasarkan kemiripan karakteristik mereka dapat menjadi pendekatan yang bermanfaat. Dengan cara ini, negara-negara yang menghadapi tantangan serupa atau memiliki potensi yang sama dapat dikelompokkan untuk mempermudah penentuan strategi kebijakan atau intervensi yang lebih spesifik.
Data yang digunakan merupakan data indikator sosial, ekonomi, dan kesehatan dari berbagai negara di dunia. Data ini bersumber dari kaggle (https://www.kaggle.com/code/zohrehtofighizavareh/clustering-on-country-dataset). Dataset terdiri dari 167 pengamatan yang mewakili berbagai negara. Data ini terdiri dari sembilan variabel yang mencakup indikator sosial, ekonomi, dan kesehatan. Variabel yang digunakan adalah sebagai berikut: child_mort: Angka kematian anak per 1.000 kelahiran. exports: Persentase ekspor terhadap produk domestik bruto (PDB). health: Persentase pengeluaran kesehatan terhadap PDB. imports: Persentase impor terhadap PDB. income: Pendapatan rata-rata per kapita (USD). inflation: Tingkat inflasi tahunan (%). life_expec: Angka harapan hidup (tahun). total_fer: Tingkat fertilitas total (jumlah anak per wanita). gdpp: PDB per kapita (USD).
Metode K-Means dipilih untuk analisis ini karena kemampuannya yang efektif dalam mengelompokkan data multidimensional menjadi kelompok-kelompok yang homogen. Algoritma ini bekerja dengan membagi data menjadi k cluster berdasarkan jarak misalkan jarak euclidean, di mana data dalam satu cluster memiliki karakteristik yang lebih mirip dibandingkan dengan data di cluster lain. K-Means sangat cocok untuk dataset besar dan bersifat numerik, seperti data negara yang mencakup berbagai indikator sosial, ekonomi, dan kesehatan. Keunggulan lain dari metode ini adalah kesederhanaan konsep dan hasil clustering yang mudah diinterpretasikan. Namun, K-Means juga memiliki beberapa keterbatasan, seperti sensitivitas terhadap skala data dan perlunya menentukan jumlah cluster yang optimal (k). Hal tersebut dapat diatasi dengan menerapkan standarisasi data dan validasi jumlah cluster untuk meningkatkan akurasi hasil.
Statistika deskriptif adalah cabang ilmu statistika yang berfokus pada pengumpulan, penyajian, dan analisis data untuk memberikan gambaran jelas mengenai karakteristik suatu kumpulan data. Menurut Ghozali (2016), statistika deskriptif mencakup kegiatan seperti menghimpun, mengorganisasi, meringkas, dan menyajikan data agar lebih mudah dipahami dan bermakna. Berbeda dengan statistik inferensial, statistika deskriptif tidak bertujuan untuk membuat generalisasi dari sampel ke populasi, melainkan hanya untuk memberikan deskripsi atau gambaran umum tentang karakteristik data yang diteliti.
Tujuan utama dari analisis statistika deskriptif adalah untuk menjelaskan variabel-variabel dalam penelitian, misalnya dengan mengidentifikasi nilai minimum, maksimum, rata-rata (mean), dan standar deviasi (Muchson, 2017). Selain itu, penyajian data dalam bentuk tabel distribusi frekuensi atau grafik juga menjadi bagian penting dari analisis ini. Dengan statistika deskriptif, data dapat diolah dan disajikan dalam format yang lebih informatif, memudahkan pemahaman bagi peneliti maupun audiens (Ghozali, 2016; Muchson, 2017).
Secara keseluruhan, statistika deskriptif adalah alat yang sangat berguna untuk memahami dan menyajikan informasi dari kumpulan data. Melalui metode ini, peneliti dapat menggambarkan karakteristik data dengan jelas tanpa membuat kesimpulan inferensial.
Metode K-Means adalah salah satu algoritma dalam klasterisasi data yang digunakan untuk mengelompokkan data ke dalam beberapa kluster berdasarkan kemiripan karakteristik. Algoritma ini berfungsi dengan cara membagi data ke dalam k kluster, di mana k adalah jumlah kluster yang ditentukan sebelumnya. Tujuan utama dari K-Means adalah untuk memaksimalkan kemiripan data dalam satu kluster dan meminimalkan kemiripan antar kluster [2][4]. Proses kerja algoritma K-Means meliputi beberapa langkah penting: 1. Penentuan jumlah cluster: Menentukan jumlah kluster k dan memilih titik pusat (centroid) secara acak. 2. Penghitungan Jarak: Menghitung jarak setiap data terhadap centroid menggunakan rumus jarak, biasanya jarak Euclidean. 3. Pengelompokan: Mengelompokkan data ke dalam kluster berdasarkan centroid terdekat. 4. Pembaruan Centroid: Menghitung centroid baru dengan mengambil rata-rata dari semua data yang tergabung dalam kluster tersebut. 5. Iterasi: Mengulangi langkah 2 hingga 4 sampai tidak ada perubahan signifikan dalam pengelompokan atau centroid stabil[4][10].
Salah satu ukuran jarak yang paling sering digunakan dalam analisis cluster adalah jarak Euclidean. Jarak ini didefinisikan sebagai akar kuadrat dari jumlah kuadrat perbedaan antara dua titik dalam ruang multidimensi. Rumus matematis untuk menghitung jarak Euclidean antara dua objek \(i\) dan \(j\) dengan \(p\) variabel adalah sebagai berikut:
\[ d_{ij} = \sqrt{\sum_{k=1}^{p} (y_{ik} - y_{jk})^2} \]
Di mana \(y_{ik}\) dan \(y_{jk}\) merupakan nilai pengamatan pada variabel ke-\(k\) untuk objek ke-\(i\) dan ke-\(j\), secara berturut-turut (Akbar & Lusia, 2022).
Metode K-Means memiliki sejumlah kelebihan yang menjadikannya pilihan populer dalam analisis data. Salah satu keunggulannya adalah kesederhanaan dan kemudahan pemahaman, yang memungkinkan pengguna, termasuk mereka yang tidak memiliki latar belakang statistik yang kuat, untuk mengimplementasikannya dengan relatif mudah. Selain itu, algoritma ini juga dikenal efisien dalam hal waktu komputasi, terutama ketika diterapkan pada dataset yang besar, sehingga dapat memberikan hasil dengan cepat. Namun, di balik kelebihannya, K-Means juga memiliki beberapa kekurangan yang perlu diperhatikan. Salah satu tantangan utama adalah penentuan jumlah kluster k yang optimal, yang sering kali memerlukan eksperimen dan analisis lebih lanjut. Selain itu, algoritma ini sensitif terhadap pemilihan centroid awal; hasil akhir klasterisasi dapat bervariasi tergantung pada titik awal yang dipilih, yang dapat menyebabkan ketidakstabilan dalam pengelompokan data [2][6].
Indeks validitas dalam analisis cluster adalah alat yang digunakan untuk menilai seberapa baik data dikelompokkan ke dalam cluster. Tiga indeks yang umum digunakan untuk tujuan ini adalah Indeks Connectivity, Indeks Dunn, dan Indeks Silhouette.
Indeks validitas konektivitas adalah alat dalam analisis klaster yang menilai seberapa baik pengelompokan data mencerminkan struktur data berdasarkan konektivitas antar titik dalam kluster. Indeks ini memungkinkan identifikasi kluster dengan bentuk dan ukuran beragam asalkan kluster terpisah dengan baik, sehingga memberikan penilaian yang lebih akurat terhadap struktur data. Penelitian menunjukkan bahwa penggabungan ukuran konektivitas dalam indeks validitas meningkatkan kemampuan menentukan jumlah kluster yang tepat dan teknik pengelompokan yang sesuai (Saha & Bandyopadhyay, 2012).
Indeks Dunn merupakan salah satu ukuran validitas yang paling sering digunakan dalam analisis cluster. Indeks ini mengevaluasi tingkat pemisahan antar cluster dengan membandingkan jarak minimum antar cluster dengan jarak maksimum dalam cluster. Nilai Indeks Dunn yang lebih tinggi menunjukkan pemisahan antar cluster yang lebih baik. Luna-Romera et al. (2020) menjelaskan bahwa indeks ini membantu mengidentifikasi cluster dengan jarak antar cluster yang besar dan jarak dalam cluster yang kecil, sehingga memberikan gambaran yang jelas tentang struktur data.
Indeks Silhouette digunakan untuk menilai seberapa baik suatu titik data dikelompokkan dalam cluster-nya dibandingkan dengan cluster lainnya. Nilai indeks ini berkisar antara -1 hingga 1, di mana nilai mendekati 1 menunjukkan bahwa titik data terkelompok dengan baik dalam cluster yang benar, sedangkan nilai negatif menunjukkan kemungkinan kesalahan pengelompokan. Riquelme-Santos et al. (2015) menyatakan bahwa Indeks Silhouette sangat berguna untuk mengevaluasi kualitas clustering, terutama pada dataset dengan dimensi yang tinggi.
Peneliti ingin memahami bagaimana negara-negara di dunia dapat dikelompokkan berdasarkan karakteristik sosial, ekonomi, dan kesehatan menggunakan metode K-Means. Dengan analisis cluster ini, peneliti bertujuan untuk mengidentifikasi dan mengelompokkan negara-negara tersebut ke dalam beberapa cluster berdasarkan kesamaan indikator yang tersedia dalam dataset.
> # Library
> library(readxl)
> library(tidyverse)
> library(cluster)
> library(factoextra)
> library(clValid)
> library(knitr)
> library(kableExtra)Keterangan :
Library readxl berfungsi memuat package readxl yang digunakan untuk membaca file excel dengan format .xlsx.
Library tidyverse digunakan sebagai alat untuk manipulasi data (dplyr), visualisasi data (ggplot2), dan pengolahan data berbasis tidy (terstruktur).
Library cluster berfungsi memuat package cluster yang digunakan untuk melakukan dan menganalisis klasterisasi data.
Library factoextra digunakan untuk membantu dalam visualisasi hasil analisis multivariat seperti PCA (Principal Component Analysis), clustering, dan analisis faktor.
Library clValid berfungsi memuat package clValid yang digunakan untuk evaluasi dan validasi hasil clustering, seperti indeks.
> datanegara <- read_excel("C:/Users/acer/Documents/dataset/country dataset.xlsx")
> data <- data.frame(datanegara)
> View(datanegara)Membaca file Excel berisi dataset dan mengonversinya menjadi data frame untuk mempermudah manipulasi data.
Menghapus baris dengan nilai missing atau NA.
Memilih kolom numerik
Memastikan semua nilai dalam kolom datan adalah numerik.
Memberikan rangkuman statistik deskriptif (mean, median, min, max, dan kuartil) untuk setiap kolom di datan.
> # Standarisasi
> datanegara_fix <- scale(datanumerik)
> datanegara_fix <- as.data.frame(datanegara_fix)Menstandarisasi data dengan mengubah setiap kolom menjadi skala z-score dan mengkonversi kembali ke data frame untuk mempermudah manipulasi.
> # Indeks Validitas untuk menentukan jumlah kluster
> validitas <- clValid(datanegara_fix, 2:8, clMethods = "kmeans", validation = "internal", metric = "euclidean")
> summary(validitas)
> optimalScores(validitas)
> plot(validitas)
Menentukan jumlah cluster optimal berdasarkan validitas internal (indeks
Silhouette, Dunn, Connectivity).
Melakukan clustering menggunakan algoritma k-means dengan 2 cluster.
Membuat visualisasi hasil clustering.
> # Menghitung rata-rata tiap variabel untuk tiap cluster
> mean_per_cluster <- aggregate(datanegara_fix, by = list(Cluster = final$cluster), mean)
> print(mean_per_cluster)Menghitung rata-rata setiap variabel untuk tiap cluster.
> # Menambahkan hasil cluster ke dataset asli
> dataclus1 <- dataclus1 %>%
+ mutate(Cluster = final$cluster)Menambahkan kolom Cluster ke dataset asli untuk menunjukkan anggota cluster.
> # Menampilkan nama negara anggota tiap cluster
> countries_by_cluster <- dataclus1 %>%
+ select(Country = colnames(data)[1], Cluster) %>%
+ arrange(Cluster)
> print(countries_by_cluster)Memilih kolom pertama (diasumsikan nama negara) dan kolom Cluster, mengurutkan data berdasarkan cluster.Outputnya yaitu daftar negara dengan cluster masing-masing.
> # Menyimpan daftar negara untuk tiap cluster
> list_of_countries <- countries_by_cluster %>%
+ group_by(Cluster) %>%
+ summarise(Negara = paste(Country, collapse = ", "))
> print(list_of_countries)Membuat daftar negara dalam satu string untuk setiap cluster.
Hasil :
> descriptive_stats <- summary(datanumerik)
> descriptive_stats
child_mort exports health imports
Min. : 2.60 Min. : 0.109 Min. : 1.810 Min. : 0.0659
1st Qu.: 8.25 1st Qu.: 23.800 1st Qu.: 4.920 1st Qu.: 30.2000
Median : 19.30 Median : 35.000 Median : 6.320 Median : 43.3000
Mean : 38.27 Mean : 41.109 Mean : 6.816 Mean : 46.8902
3rd Qu.: 62.10 3rd Qu.: 51.350 3rd Qu.: 8.600 3rd Qu.: 58.7500
Max. :208.00 Max. :200.000 Max. :17.900 Max. :174.0000
income inflation life_expec total_fer
Min. : 609 Min. : -4.210 Min. :32.10 Min. :1.150
1st Qu.: 3355 1st Qu.: 1.810 1st Qu.:65.30 1st Qu.:1.795
Median : 9960 Median : 5.390 Median :73.10 Median :2.410
Mean : 17145 Mean : 7.782 Mean :70.56 Mean :2.948
3rd Qu.: 22800 3rd Qu.: 10.750 3rd Qu.:76.80 3rd Qu.:3.880
Max. :125000 Max. :104.000 Max. :82.80 Max. :7.490
gdpp
Min. : 231
1st Qu.: 1330
Median : 4660
Mean : 12964
3rd Qu.: 14050
Max. :105000 Hasil :
> validitas <- clValid(datanegara_fix, 2:8, clMethods = "kmeans", validation = "internal", metric = "euclidean")
> summary(validitas)
Clustering Methods:
kmeans
Cluster sizes:
2 3 4 5 6 7 8
Validation Measures:
2 3 4 5 6 7 8
kmeans Connectivity 2.9290 39.2329 44.1865 42.5603 44.4325 46.2659 68.6206
Dunn 0.5457 0.0666 0.0838 0.0861 0.0972 0.0972 0.1107
Silhouette 0.6303 0.2859 0.3005 0.3044 0.3107 0.3064 0.2471
Optimal Scores:
Score Method Clusters
Connectivity 2.9290 kmeans 2
Dunn 0.5457 kmeans 2
Silhouette 0.6303 kmeans 2
> optimalScores(validitas)
Score Method Clusters
Connectivity 2.9289683 kmeans 2
Dunn 0.5456675 kmeans 2
Silhouette 0.6303376 kmeans 2
> plot(validitas)
Interpretasi :
Dari ketiga indeks validitas, semuanya menunjukkan optimum score pada 2 cluster. Maka akan digunakan 2 cluster.
Hasil :
> final <- kmeans(datanegara_fix, 2, nstart = 25)
> print(final)
K-means clustering with 2 clusters of sizes 99, 68
Cluster means:
child_mort exports health imports income inflation life_expec
1 -0.6473874 0.2733858 0.1814275 0.09215345 0.4602372 -0.2155284 0.6677315
2 0.9425200 -0.3980176 -0.2641371 -0.13416458 -0.6700512 0.3137840 -0.9721385
total_fer gdpp
1 -0.6650953 0.4115852
2 0.9683006 -0.5992197
Clustering vector:
[1] 2 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 2 1 1 1 2 2 2 2 1 1 2 2 1 1 1 2
[38] 2 2 1 2 1 1 1 1 1 1 2 1 2 2 1 1 1 1 2 2 1 1 2 1 1 2 2 2 2 2 1 1 2 2 1 2 1
[75] 1 1 1 1 1 1 2 2 1 2 2 1 1 2 2 1 1 1 1 2 2 1 1 2 1 2 1 2 1 2 1 1 2 2 2 2 1
[112] 1 2 2 1 1 2 1 1 1 2 1 1 1 1 1 2 2 1 2 1 1 2 1 1 1 2 2 1 1 1 1 2 1 1 1 2 2
[149] 1 2 2 2 1 1 2 2 1 1 1 1 1 2 2 1 1 2 2
Within cluster sum of squares by cluster:
[1] 643.3747 400.5512
(between_SS / total_SS = 30.1 %)
Available components:
[1] "cluster" "centers" "totss" "withinss" "tot.withinss"
[6] "betweenss" "size" "iter" "ifault"
> fviz_cluster(final, data = datanegara_fix)
Interpretasi :
Berdasarkan hasil output di atas, dapat disimpulkan bahwa data dibagi menjadi 2 cluster yaitu: Cluster 1 terdiri dari 99 negara yaitu: Albania, Algeria, Antigua and Barbuda, Argentina, Armenia, Australia, Austria, Azerbaijan, Bahamas, Bahrain, Barbados, Belarus, Belgium, Belize, Bhutan, Bosnia and Herzegovina, Brazil, Brunei, Bulgaria, Canada, Cape Verde, Chile, China, Colombia, Costa Rica, Croatia, Cyprus, Czech Republic, Denmark, Dominican Republic, Ecuador, El Salvador, Estonia, Fiji, Finland, France, Georgia, Germany, Greece, Grenada, Hungary, Iceland, Iran, Ireland, Israel, Italy, Jamaica, Japan, Jordan, Kazakhstan, Kuwait, Latvia, Lebanon, Libya, Lithuania, Luxembourg, Macedonia, FYR, Malaysia, Maldives, Malta, Mauritius, Moldova, Montenegro, Morocco, Netherlands, New Zealand, Norway, Oman, Panama, Paraguay, Peru, Poland, Portugal, Qatar, Romania, Russia, Saudi Arabia, Serbia, Seychelles, Singapore, Slovak Republic, Slovenia, South Korea, Spain, Sri Lanka, St. Vincent and the Grenadines, Suriname, Sweden, Switzerland, Thailand, Tunisia, Turkey, Ukraine, United Arab Emirates, United Kingdom, United States, Uruguay, Venezuela, Vietnam. Cluster 2 terdiri dari 68 negara yaitu: Afghanistan, Angola, Bangladesh, Benin, Bolivia, Botswana, Burkina Faso, Burundi, Cambodia, Cameroon, Central African Republic, Chad, Comoros, Congo Dem. Rep., Congo Rep., Cote d’Ivoire, Egypt, Equatorial Guinea, Eritrea, Gabon, Gambia, Ghana, Guatemala, Guinea, Guinea-Bissau, Guyana, Haiti, India, Indonesia, Iraq, Kenya, Kiribati, Kyrgyz Republic, Lao, Lesotho, Liberia, Madagascar, Malawi, Mali, Mauritania, Micronesia, Fed. Sts., Mongolia, Mozambique, Myanmar, Namibia, Nepal, Niger, Nigeria, Pakistan, Philippines, Rwanda, Samoa, Senegal, Sierra Leone, Solomon Islands, South Africa, Sudan, Tajikistan, Tanzania, Timor-Leste, Togo, Tonga, Turkmenistan, Uganda, Uzbekistan, Vanuatu, Yemen, Zambia.
Hasil :
> mean_per_cluster <- aggregate(datanegara_fix, by = list(Cluster = final$cluster), mean)
> print(mean_per_cluster)
Cluster child_mort exports health imports income inflation
1 1 -0.6473874 0.2733858 0.1814275 0.09215345 0.4602372 -0.2155284
2 2 0.9425200 -0.3980176 -0.2641371 -0.13416458 -0.6700512 0.3137840
life_expec total_fer gdpp
1 0.6677315 -0.6650953 0.4115852
2 -0.9721385 0.9683006 -0.5992197Interpretasi :
Berdasarkan hasil output di atas, dapat dilihat bahwa cluster 1 berisi negara-negara dengan tingkat pembangunan ekonomi dan sosial yang lebih baik. Ditandai dengan pendapatan tinggi, harapan hidup panjang, tingkat kematian anak rendah, serta inflasi yang stabil. Negara-negara ini kemungkinan besar adalah negara maju atau berkembang pesat. sedangkan cluster 2 berisi negara-negara dengan kondisi sosial-ekonomi yang kurang berkembang. Ditandai dengan angka kematian anak tinggi, harapan hidup pendek, inflasi lebih tinggi, dan GDP per kapita rendah. Negara-negara ini kemungkinan besar adalah negara berkembang.
Berdasarkan penelitian tentang tingkat kasus persebaran COVID-19 menggunakan analisis cluster hierarki, diperoleh kesimpulan bahwa Provinsi DKI Jakarta memiliki kondisi karakteristik yang berbeda dibandingkan provinsi lain. Hasil analisis menunjukkan bahwa DKI Jakarta mendominasi dalam tingkat persebaran kasus COVID-19, yang terlihat dari nilai variabel-variabel utama yang secara signifikan lebih tinggi dibandingkan dengan rata-rata provinsi lainnya. Perbedaan ini disebabkan oleh beberapa faktor, seperti tingginya jumlah penduduk dan kepadatan penduduk,yang menjadikannya wilayah dengan risiko penularan virus yang lebih tinggi.
Selain itu, hasil analisis ini juga menegaskan bahwa DKI Jakarta membutuhkan perhatian khusus dalam pengendalian pandemi. Strategi penanganan yang diterapkan di wilayah ini harus difokuskan pada pengelolaan tingkat mobilitas penduduk, peningkatan kesadaran masyarakat akan pentingnya protokol kesehatan, serta percepatan program vaksinasi. Dengan demikian, analisis cluster hierarki ini memberikan pemahaman yang lebih mendalam tentang pola persebaran COVID-19 di Indonesia dan dapat menjadi acuan penting dalam menentukan langkah-langkah mitigasi yang lebih efektif.
Berdasarkan hasil penelitian, disarankan untuk meningkatkan penyajian informasi dengan menambahkan elemen grafis agar pembaca lebih mudah memahami pembahasan yang disampaikan. Selain itu, pengumpulan data yang lebih lengkap dan terbaru perlu dilakukan untuk meningkatkan akurasi dalam pemetaan kelompok negara berdasarkan sosial, ekonomi, dan kesehatan maupun indikator lainnya. Dapat juga digunakan metode analisis cluster hierarki untuk melihat erbandingannya. Jika berdasarkan kendala yang saya alami, mungkin perlu dilakukan pemahaman lebih lanjut tentang penentuan jumlah cluster optimum dan dapat juga digunakan metode lain.
Untuk meningkatkan kesejahteraan dan stabilitas ekonomi, penting bagi negara-negara di dunia untuk fokus pada penguatan layanan dasar seperti kesehatan dan pendidikan, serta memperbaiki akses masyarakat terhadap layanan kesehatan untuk menurunkan angka kematian anak dan meningkatkan harapan hidup. Kebijakan untuk mengendalikan inflasi dan mendiversifikasi sektor ekonomi juga penting untuk meningkatkan daya saing dan produktivitas. Negara harus memperkuat peran dalam perdagangan internasional dan menjalin kerjasama global untuk mendorong investasi dan infrastruktur. Selain itu, investasi pada pendidikan dan pelatihan tenaga kerja sangat diperlukan untuk menciptakan sumber daya manusia yang berkualitas. Program pengendalian pertumbuhan populasi melalui kesadaran keluarga berencana juga penting untuk mendukung pembangunan berkelanjutan. ## Daftar Pustaka
Akbar, D. A. R., & Lusia, D. A. (2022). Perbandingan Jarak Euclidean Dan Manhattan Pada Analisis Cluster Hierarki Dan K-Means. Sarjana thesis, Universitas Brawijaya.
Bangoria et al. (2013). “Application of k-Means Clustering Algorithm for Prediction of Students’ Academic Performance.”
Ghozali, I. 2016. Aplikasi Analisis Multivariete Dengan Program IBM SPSS 23. Edisi 8. Semarang: Badan Penerbit Universitas Diponegoro.
Kamila, I., Khairunnisa, U., & Mustakim, M. (2019). “Perbandingan Algoritma K-Means dan K-Medoids untuk Pengelompokan Data Transaksi Bongkar Muat di Provinsi Riau.” Jurnal Informatika.
Luna-Romera, J. M., Martínez-Ballesteros, M. del M., García-Gutiérrez, J., & Riquelme-Santos, J. C. (2020). An Approach to Silhouette and Dunn Clustering Indices Applied to Big Data in Spark. Journal of Computer Science and Technology, 35(4), 703-718.
Madhulatha, T.S. (2012). “An Overview of Clustering Methods.” Journal of Computer Science and Engineering.
Muchson, M. (2017). Statistik Deskriptif. Bogor: Guepedia.
Riquelme-Santos, J. C., Martínez-Ballesteros, M. del M., & Luna-Romera, J. M. (2015). A new validity index for crisp clusters. Pattern Analysis and Applications, 18(4), 827-835.
Saha, S., & Bandyopadhyay, S. (2012). Some connectivity based cluster validity indices. Applied Soft Computing, 12(3), 1555-1565.
Yani Prihati et al. (2021). “Pemetaan Prestasi Akademik Siswa di Sekolah Dasar Terang Bagi Bangsa Pati.” Universitas AKI Semarang.