Diabetes mellitus adalah salah satu penyakit kronis yang terus meningkat prevalensinya di seluruh dunia. Penyakit ini ditandai dengan kadar glukosa darah yang tinggi akibat gangguan pada produksi atau fungsi insulin. Berdasarkan laporan dari International Diabetes Federation (IDF), pada tahun 2021 terdapat sekitar 537 juta orang dewasa yang hidup dengan diabetes, dan angka ini diperkirakan akan meningkat menjadi 783 juta pada tahun 2045. Diabetes tidak hanya membahayakan kesehatan individu, tetapi juga menjadi beban besar bagi sistem kesehatan global karena biaya perawatan yang tinggi dan dampak sosial-ekonomi yang ditimbulkan.
Salah satu tantangan utama dalam penanganan diabetes adalah deteksi dini, terutama di negara-negara berkembang di mana akses terhadap layanan kesehatan yang memadai sering kali terbatas. Deteksi dini sangat penting untuk mencegah komplikasi serius yang dapat terjadi, seperti penyakit jantung, stroke, gagal ginjal, kebutaan, dan amputasi. Namun, metode diagnostik konvensional, seperti tes glukosa darah puasa atau tes toleransi glukosa, sering kali memerlukan sumber daya yang tidak selalu tersedia, terutama di wilayah terpencil. Oleh karena itu, pendekatan berbasis data dan metode statistik modern menjadi solusi alternatif yang semakin relevan.
Salah satu pendekatan yang banyak digunakan dalam pengolahan data kesehatan adalah analisis diskriminan. Metode ini merupakan teknik statistik yang digunakan untuk mengklasifikasikan individu ke dalam kelompok-kelompok tertentu berdasarkan karakteristik yang dimilikinya. Dalam konteks diabetes, analisis diskriminan dapat digunakan untuk membedakan individu dengan status diabetes (positif) dan non-diabetes (negatif) berdasarkan sejumlah variabel prediktor. Selain itu, metode ini memungkinkan identifikasi variabel-variabel yang paling signifikan dalam memengaruhi status diabetes seseorang.
Penelitian ini menggunakan dataset yang terdiri dari beberapa variabel penting yang telah diketahui secara klinis memiliki hubungan dengan risiko diabetes, yaitu:
Pemilihan analisis diskriminan sebagai metode dalam penelitian ini didasarkan pada keunggulannya dalam menangani data dengan variabel-variabel prediktor yang terukur secara kuantitatif. Selain itu, hasil dari analisis diskriminan dapat memberikan model prediksi yang mudah diinterpretasikan dan diterapkan, sehingga dapat menjadi alat bantu yang efektif dalam pengambilan keputusan di bidang kesehatan masyarakat.
Penelitian ini memiliki nilai penting dalam upaya pencegahan dan pengendalian diabetes, khususnya dengan menyediakan pendekatan alternatif yang berbasis data untuk mendukung deteksi dini. Dengan memanfaatkan teknik analisis diskriminan, hasil dari penelitian ini diharapkan dapat memberikan kontribusi nyata dalam pengembangan sistem diagnostik yang lebih sederhana, murah, dan cepat, yang pada akhirnya dapat mendukung upaya peningkatan kualitas hidup masyarakat secara luas.
Berdasarkan latar belakang tersebut, terdapat beberapa permasalahan yang dapat dirumuskan dalam penelitian ini menggunakan analisis diskriminan tersebut yaitu :
Berdasarkan rumusan masalah tersebut, terdapat tujuan penelitian untuk menjawab permasalahan dalam penelitian tersebut yakni :
Diabetes mellitus adalah kondisi kronis yang memengaruhi kemampuan tubuh untuk mengatur kadar gula darah (glukosa). Kondisi ini dapat disebabkan oleh kekurangan produksi insulin atau ketidakmampuan tubuh untuk menggunakan insulin secara efektif. Diabetes dibagi menjadi beberapa tipe, dengan diabetes tipe 2 menjadi yang paling umum, terutama di kalangan orang dewasa. Diabetes tipe 2 sering dikaitkan dengan gaya hidup tidak sehat, pola makan tinggi gula dan lemak, serta kurangnya aktivitas fisik.
Diabetes memiliki dampak yang signifikan terhadap kesehatan masyarakat, termasuk peningkatan risiko penyakit kardiovaskular, gagal ginjal, dan komplikasi lainnya. Oleh karena itu, diperlukan pendekatan yang efektif untuk mendeteksi dini individu yang berisiko tinggi. Variabel seperti kadar glukosa darah, tekanan darah, ketebalan kulit, dan Indeks Massa Tubuh (BMI) merupakan indikator penting dalam menganalisis risiko diabetes (ADA, 2019).
Penelitian ini menggunakan empat variabel prediktor utama: Glucose, Blood Pressure, Skin Thickness, dan BMI.
Glucose Kadar glukosa darah merupakan indikator utama untuk mendiagnosis diabetes. Nilai glukosa yang tinggi menunjukkan adanya gangguan metabolisme yang dapat menyebabkan diabetes. Dalam penelitian medis, kadar glukosa darah sering menjadi variabel prediktor yang paling signifikan (Barrett-Connor, 2010).
Blood Pressure (Tekanan Darah) Hipertensi sering dikaitkan dengan resistensi insulin, yang merupakan salah satu penyebab utama diabetes tipe 2. Tekanan darah yang tinggi meningkatkan risiko komplikasi diabetes, seperti penyakit jantung dan kerusakan pembuluh darah (U.S. Health Department, 2017).
Skin Thickness (Ketebalan Kulit) Ketebalan kulit merupakan ukuran lemak subkutan yang dapat mencerminkan tingkat obesitas. Penumpukan lemak yang berlebihan berkontribusi pada resistensi insulin, yang pada akhirnya meningkatkan risiko diabetes tipe 2 (Colberg et al., 2016).
Body Mass Index (BMI) BMI digunakan untuk menentukan apakah seseorang berada dalam kategori berat badan normal, kelebihan berat badan, atau obesitas. Obesitas merupakan salah satu faktor risiko utama diabetes tipe 2, karena dapat menurunkan sensitivitas insulin (Nguyen et al., 2013).
Analisis diskriminan adalah metode statistik yang digunakan untuk memisahkan atau mengklasifikasikan kelompok data berdasarkan satu atau lebih variabel prediktor. Tujuan utamanya adalah mengembangkan fungsi diskriminan linier yang memaksimalkan perbedaan antara kelompok. Dalam penelitian ini, analisis diskriminan bertujuan untuk memprediksi status diabetes seseorang (0: Tidak Diabetes, 1: Diabetes) berdasarkan variabel prediktor Glucose, Blood Pressure, Skin Thickness, dan BMI.
Fungsi diskriminan linier (LDF) dinyatakan sebagai: \[ Y = b_0 + b_1X_1 + b_2X_2 + ...+ b_kX_k \] \[ \begin{array}{l} \text{Di mana:}\\ \ Y \text{ : nilai (skor) diskriminan dan merupakan variabel terikat} \\ \ b_0 \text{ : konstanta (intersep) } \\ \ X_k \text{ : variabel (atribut) ke-k dan merupakan variabel terikat} \\ \ b_k \text{ : koefisien diskriminan/bobot dari variabel (atribut) ke-k} \end{array} \]
Metode ini bekerja dengan membangun fungsi diskriminan linier, yaitu kombinasi linier dari variabel prediktor yang memaksimalkan perbedaan antara kelompok. Fungsi diskriminan dihasilkan berdasarkan asumsi berikut:
Fungsi diskriminan ini kemudian dapat digunakan untuk mengklasifikasikan individu baru ke dalam salah satu kelompok berdasarkan nilai variabel prediktor mereka.
Membangun Model Diskriminan Model diskriminan dibangun dengan menggunakan metode seperti Linear Discriminant Analysis (LDA), yang menghasilkan fungsi diskriminan berdasarkan kontribusi masing-masing variabel prediktor.
Evaluasi Model
Agar analisis diskriminan memberikan hasil yang valid, asumsi-asumsi berikut harus terpenuhi:
Hubungan Linier: Variabel prediktor harus memiliki hubungan linier dengan variabel respon.
Tidak Ada Multikolinearitas: Variabel prediktor tidak boleh saling berkorelasi secara signifikan.
Analisis diskriminan telah diterapkan secara luas dalam bidang kesehatan, terutama dalam mengklasifikasikan individu berdasarkan berbagai karakteristik biologis dan medis. Dalam konteks diabetes, analisis diskriminan dapat membantu mengidentifikasi individu yang berisiko tinggi terhadap diabetes dengan menggunakan variabel-variabel yang tersedia, seperti yang dijelaskan di atas. Sebagai contoh, penelitian oleh Besser et al. (2005) menunjukkan bahwa penggunaan analisis diskriminan untuk memisahkan individu dengan diabetes dan non-diabetes dapat menghasilkan tingkat akurasi yang tinggi dengan menggunakan variabel seperti glukosa darah, tekanan darah, dan BMI.
Studi lain oleh Jiang et al. (2017) juga mengonfirmasi bahwa LDA efektif dalam memprediksi diabetes pada populasi yang lebih besar dengan tingkat keakuratan yang signifikan, bahkan ketika variabel-variabel prediktor terdiri dari beberapa faktor yang saling berinteraksi.
Uji ini bertujuan untuk memastikan bahwa data memenuhi asumsi distribusi normal. Dalam penelitian ini, uji Royston digunakan untuk memeriksa normalitas variabel prediktor dalam setiap kelompok.
Uji Box’s M dilakukan untuk memeriksa apakah matriks kovarians antar-kelompok homogen. Jika asumsi ini terpenuhi, metode diskriminan linier dapat digunakan.
Setelah membangun fungsi diskriminan, langkah berikutnya adalah mengevaluasi akurasi model melalui:
Penelitian ini memanfaatkan analisis diskriminan untuk mengidentifikasi dan memprediksi status diabetes berdasarkan empat variabel prediktor utama. Langkah-langkah yang dilakukan mencakup:
Dalam kasus penelitian ini, data yang digunakan adalah dataset prediksi diabetes yang berisi informasi tentang sejumlah individu, baik yang menderita diabetes maupun yang tidak. Dataset ini memuat beberapa variabel prediktor yang relevan dengan kondisi diabetes dan satu variabel respon (outcome).
Sumber Data : https://www.kaggle.com/datasets/uciml/pima-indians-diabetes-database
Dataset awal mencakup beberapa ratus individu, tetapi dalam penelitian ini, data akan diseleksi untuk memenuhi asumsi analisis diskriminan, seperti normalitas multivariat dan homogenitas matriks varians-kovarians. Hanya individu yang datanya memenuhi kriteria tersebut yang akan digunakan.
Data ini digunakan untuk memahami pola perbedaan antara kelompok diabetes dan non-diabetes serta untuk membangun model diskriminan yang dapat mengklasifikasikan status diabetes berdasarkan variabel prediktor.
> library(readxl)
> library(knitr)
> datadiskriminan <-read_excel("data prediksi diabetes.xlsx")
> datadiskriminan <- data.frame(datadiskriminan)
> head(datadiskriminan)
Outcome Glucose BloodPressure SkinThickness BMI
1 1 148 72 35 33.6
2 0 85 66 29 26.6
3 1 183 64 0 23.3
4 1 137 40 35 43.1
5 0 116 74 0 25.6
6 1 78 50 32 31.0
> kable(head(datadiskriminan),
+ caption = "Dataset Prediksi Diabetes")| Outcome | Glucose | BloodPressure | SkinThickness | BMI |
|---|---|---|---|---|
| 1 | 148 | 72 | 35 | 33.6 |
| 0 | 85 | 66 | 29 | 26.6 |
| 1 | 183 | 64 | 0 | 23.3 |
| 1 | 137 | 40 | 35 | 43.1 |
| 0 | 116 | 74 | 0 | 25.6 |
| 1 | 78 | 50 | 32 | 31.0 |
Berikut ditampilkan cuplikan dataset pada website yang digunakan, sebagai berikut :
0: Tidak diabetes. 1: Diabetes.
Tujuan: Variabel ini digunakan untuk membagi individu ke dalam dua kelompok utama, yaitu penderita diabetes dan bukan penderita diabetes. Variabel ini menjadi dasar dalam analisis diskriminan untuk menentukan pola pembeda berdasarkan variabel prediktor.
Tipe: Numerik (kontinu). Deskripsi: Tingkat glukosa dalam darah seseorang (mg/dL). Relevansi: Glukosa darah yang tinggi merupakan indikator penting dalam diagnosis diabetes.
Tipe: Numerik (kontinu). Deskripsi: Tekanan darah diastolik seseorang (mmHg). Relevansi: Tekanan darah sering dikaitkan dengan risiko diabetes karena komplikasi metabolisme.
Tipe: Numerik (kontinu). Deskripsi: Ketebalan lipatan kulit tricep (mm). Relevansi: Digunakan sebagai proxy untuk mengukur lemak tubuh, yang merupakan faktor risiko untuk diabetes tipe 2.
Tipe: Numerik (kontinu). Deskripsi: Indeks massa tubuh yang dihitung dari berat badan (kg) dibagi tinggi badan (m²). Relevansi: BMI yang tinggi sering dikaitkan dengan obesitas, yang merupakan salah satu faktor risiko utama diabetes tipe 2.
> #INPUT DATA
> datadiskriminan <-read_excel("data prediksi diabetes.xlsx")
> datadiskriminan <- data.frame(datadiskriminan)
> head(datadiskriminan)
Outcome Glucose BloodPressure SkinThickness BMI
1 1 148 72 35 33.6
2 0 85 66 29 26.6
3 1 183 64 0 23.3
4 1 137 40 35 43.1
5 0 116 74 0 25.6
6 1 78 50 32 31.0> #Cek outlier
> datacek<- datadiskriminan
> hasildata<-mvn(datacek[,2:5], multivariateOutlierMethod = "adj", showNewData = TRUE,
+ showOutliers = TRUE,multivariatePlot = 'qq')>
> #Uji normalitas dataset yang tanpa outlier
> databaru <- hasildata$newData
>
> hasil<- mvn(databaru, mvnTest = 'royston', alpha = 0.05)
> hasil
$multivariateNormality
Test H p value MVN
1 Royston 6.104082 0.1925846 YES
$univariateNormality
Test Variable Statistic p value Normality
1 Anderson-Darling Glucose 0.3588 0.4380 YES
2 Anderson-Darling BloodPressure 0.2948 0.5840 YES
3 Anderson-Darling SkinThickness 0.5969 0.1152 YES
4 Anderson-Darling BMI 0.2888 0.6020 YES
$Descriptives
n Mean Std.Dev Median Min Max 25th 75th Skew
Glucose 50 116.520 25.60950 115.5 65.0 181.0 101.000 128.750 0.4377330
BloodPressure 50 73.300 10.20654 74.0 50.0 94.0 66.500 78.000 -0.1952954
SkinThickness 50 29.240 11.50787 30.0 0.0 48.0 23.250 37.000 -0.7114030
BMI 50 32.564 6.05791 32.4 22.2 45.8 28.075 36.575 0.2289900
Kurtosis
Glucose -0.1405144
BloodPressure -0.4550519
SkinThickness 0.4026570
BMI -0.7365845
> hasildata$multivariateOutliers
Observation Mahalanobis Distance Outlier
7 7 111.369 TRUE
10 10 87.702 TRUE
13 13 40.881 TRUE
4 4 39.259 TRUE
35 35 23.898 TRUE
8 8 23.630 TRUE
3 3 23.543 TRUE
39 39 20.830 TRUE
32 32 20.085 TRUE
31 31 19.839 TRUE
61 61 17.579 TRUE
34 34 16.130 TRUE
16 16 15.483 TRUE
33 33 15.455 TRUE
22 22 15.247 TRUE
>
> dataakhir<-datadiskriminan[c(1:2,5:6,9,11:12,14:15,17:21,23:30,36:38,40:60,62:65),1:5]> #Pengujian perbedaan Rata-rata variabel dependen
> X<-as.matrix(dataakhir[2:5])
> X.manova<-manova(X~dataakhir$Outcome, data=dataakhir)
> X.wilks<-summary(X.manova, test="Wilks")
> X.wilks
Df Wilks approx F num Df den Df Pr(>F)
dataakhir$Outcome 1 0.79067 2.9784 4 45 0.02894 *
Residuals 48
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1> cc<-candisc(X.manova)
> cc
Canonical Discriminant Analysis for dataakhir$Outcome:
CanRsq Eigenvalue Difference Percent Cumulative
1 0.20933 0.26475 100 100
Test of H0: The canonical correlations in the
current row and all that follow are zero
LR test stat approx F numDF denDF Pr(> F)
1 0.79067 2.9784 4 45 0.02894 *
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1> #Membuat fungsi diskriminan
> modellda<-lda(Outcome~., data = dataakhir)
> modellda
Call:
lda(Outcome ~ ., data = dataakhir)
Prior probabilities of groups:
0 1
0.58 0.42
Group means:
Glucose BloodPressure SkinThickness BMI
0 107.931 71.62069 26.89655 31.11034
1 128.381 75.61905 32.47619 34.57143
Coefficients of linear discriminants:
LD1
Glucose 0.038553450
BloodPressure -0.028839321
SkinThickness 0.008926434
BMI 0.086254208
>
> # Variabel pembeda terkuat
> pembedaterkuat <- DFA(dataakhir, 'Outcome', c('Glucose','BloodPressure','SkinThickness','BMI')) Function eigenvalue proportion of variance canonical r
1 0.265 1 0.458
Wilk's Lambda F-approx. df1 df2 p
1 through 1 0.791 2.978 4 45 0.02894
Pillai-Bartlett Trace F-approx. df1 df2 p
1 through 1 0.209 2.978 4 45 0.02894
Hotelling-Lawley Trace F-approx. df1 df2 p
1 through 1 0.265 2.978 4 45 0.02894
Roy's Largest Root lambda F-approx. df1 df2
1 through 1 0.265 0.209 12.708 1 48
p
1 through 1 0.00084
Function 1
Glucose -0.039
BloodPressure 0.029
SkinThickness -0.009
BMI -0.086
Function 1
Glucose -0.843
BloodPressure -0.387
SkinThickness -0.484
BMI -0.578
Function 1
Glucose -0.906
BloodPressure 0.289
SkinThickness -0.100
BMI -0.501
Function 1
Glucose -0.915
BloodPressure 0.292
SkinThickness -0.101
BMI -0.506
Function 1
0 0.429
1 -0.592
Function 1
0 0.920
1 1.102
Function 1
0 0.385
1 -0.532
Function 1
0 0.826
1 0.990
Eta-squared Wilks_Lambda F df df_res p
Function 1 0.209 0.791 12.708 1 48 0.00084
Bayes_Factor_alt_vs_null Bayes_Factor_null_vs_alt
Function 1 36.074 0.028
Eta-squared Wilks_Lambda F df df_res
Glucose 0.159 0.841 9.041 1 48
BloodPressure 0.038 0.962 1.904 1 48
SkinThickness 0.058 0.942 2.979 1 48
BMI 0.081 0.919 4.239 1 48
p Bayes_Factor_alt_vs_null
Glucose 0.00419 9.638
BloodPressure 0.17406 0.618
SkinThickness 0.09079 0.950
BMI 0.04496 1.559
Bayes_Factor_null_vs_alt
Glucose 0.104
BloodPressure 1.617
SkinThickness 1.053
BMI 0.641
Group1 N1 Mean1 SD1 Group2 N2 Mean2 SD2 t df
1 1 21 -0.59 1.1 0 29 0.43 0.92 3.46 38.3
p p adj.
1 0.00133 0.00133
Group1 Group2 d g r BESD Bayes_Factor_alt_vs_null
1 1 0 1.13 1.12 0.49 74.41 28.02
Bayes_Factor_null_vs_alt
1 0.04
Group1 N1 Mean1 SD1 Group2 N2 Mean2 SD2 t df
1 1 21 128.38 28.55 0 29 107.93 19.58 -2.83 33.19
p p adj.
1 0.00775 0.00775
Group1 Group2 d g r BESD Bayes_Factor_alt_vs_null
1 1 0 1 0.98 0.44 72.07 6.22
Bayes_Factor_null_vs_alt
1 0.16
Group1 N1 Mean1 SD1 Group2 N2 Mean2 SD2 t df
1 1 21 75.62 9.67 0 29 71.62 10.42 -1.4 45.04
p p adj.
1 0.16934 0.16934
Group1 Group2 d g r BESD Bayes_Factor_alt_vs_null
1 1 0 0.42 0.42 0.2 60.19 0.5
Bayes_Factor_null_vs_alt
1 1.98
Group1 N1 Mean1 SD1 Group2 N2 Mean2 SD2 t df
1 1 21 32.48 10.42 0 29 26.9 11.86 -1.76 46.13
p p adj.
1 0.08458 0.08458
Group1 Group2 d g r BESD Bayes_Factor_alt_vs_null
1 1 0 0.53 0.52 0.25 62.56 0.83
Bayes_Factor_null_vs_alt
1 1.21
Group1 N1 Mean1 SD1 Group2 N2 Mean2 SD2 t df
1 1 21 34.57 5.43 0 29 31.11 6.16 -2.1 46.05
p p adj.
1 0.04114 0.04114
Group1 Group2 d g r BESD Bayes_Factor_alt_vs_null
1 1 0 0.63 0.62 0.3 64.79 1.44
Bayes_Factor_null_vs_alt
1 0.7
Group1 Group2 t t1-critical t1 decision
1 0 -2.835 2.588 significant
Confidence Level
0.987
Group1 Group2 t t1-critical t1 decision
1 0 -1.397 2.588 not significant
Confidence Level
0.987
Group1 Group2 t t1-critical t1 decision
1 0 -1.763 2.588 not significant
Confidence Level
0.987
Group1 Group2 t t1-critical t1 decision
1 0 -2.101 2.588 not significant
Confidence Level
0.987
Group1 Group2 t t2-critical t2 decision
1 0 -2.835 2.474 significant
Group1 Group2 t t2-critical t2 decision
1 0 -1.397 2.474 not significant
Group1 Group2 t t2-critical t2 decision
1 0 -1.763 2.474 not significant
Group1 Group2 t t2-critical t2 decision
1 0 -2.101 2.474 not significant
0 1
0.58 0.42
0 1
Glucose 0.072 0.112
BloodPressure 0.499 0.469
SkinThickness -0.206 -0.197
BMI 0.810 0.898
0 1
-32.595 -38.243
Predicted
Original 0 1
0 22 7
1 11 10
Number of cases in table: 50
Number of factors: 2
Test for independence of all factors:
Chisq = 2.9927, df = 1, p-value = 0.08364
kappa z p
Cohen's kappa 0.241 1.62 0.1052
Fleiss's kappa 0.236 1.67 0.0952
0 1
0.67 0.53
Classif. prob. 0 1
0.00 29 21
0.10 29 21
0.20 29 21
0.30 29 17
0.40 29 14
0.50 22 10
0.60 18 9
0.70 12 6
0.75 10 3
0.80 8 2
0.85 7 2
0.90 4 2
0.95 0 0
1.00 0 0
Classif. prob. 0 1
0.00 1.00 1.00
0.10 1.00 1.00
0.20 1.00 1.00
0.30 1.00 0.81
0.40 1.00 0.67
0.50 0.76 0.48
0.60 0.62 0.43
0.70 0.41 0.29
0.75 0.34 0.14
0.80 0.28 0.10
0.85 0.24 0.10
0.90 0.14 0.10
0.95 0.00 0.00
1.00 0.00 0.00
Cross-Validated
Original 0 1
0 19 10
1 12 9
Number of cases in table: 50
Number of factors: 2
Test for independence of all factors:
Chisq = 0.3626, df = 1, p-value = 0.5471
kappa z p
Cohen's kappa 0.085 0.577 0.56366
Fleiss's kappa 0.083 0.589 0.55568
> pembedaterkuat
$evals
Function eigenvalue proportion of variance canonical r
1 0.2647497 1 0.4575256
$mv_Wilks
Wilk's Lambda F-approx. df1 df2 p
1 through 1 0.7906703 2.978434 4 45 0.0289419
$mv_Pillai
Pillai-Bartlett Trace F-approx. df1 df2 p
1 through 1 0.2093297 2.978434 4 45 0.0289419
$mv_Hotelling
Hotelling-Lawley Trace F-approx. df1 df2 p
1 through 1 0.2647497 2.978434 4 45 0.0289419
$mv_Roy
Roy's Largest Root lambda F-approx. df1 df2 p
1 through 1 0.2647497 0.2093297 12.70798 1 48 0.0008360521
$coefs_raw
Function 1
Glucose -0.038553450
BloodPressure 0.028839321
SkinThickness -0.008926434
BMI -0.086254208
$coefs_structure
Function 1
Glucose -0.8434737
BloodPressure -0.3870407
SkinThickness -0.4841657
BMI -0.5775270
$coefs_standardized
Function 1
Glucose -0.9057141
BloodPressure 0.2886809
SkinThickness -0.0996777
BMI -0.5008734
$coefs_standardizedSPSS
Function 1
Glucose -0.9151000
BloodPressure 0.2916725
SkinThickness -0.1007107
BMI -0.5060640
$centroids
Function 1
0 0.4290066
1 -0.5924377
$centroidsSDs
Function 1
0 0.9199137
1 1.1023894
$centroidsZ
Function 1
0 0.3854243
1 -0.5322526
$centroidsSDsZ
Function 1
0 0.8264607
1 0.9903989
$dfa_scores
group Function.1
1 1 -1.39192933
2 0 1.52124013
5 0 0.90191855
6 1 0.92338733
9 1 -1.27028566
11 1 -1.04867254
12 1 0.90388276
14 1 -0.21896617
15 0 -0.62753190
17 1 0.35360463
18 1 -0.80560678
19 1 -0.26690520
20 0 1.47683312
21 0 0.13824514
23 0 0.07150097
24 1 -1.49852456
25 0 1.49079860
26 0 0.33672727
27 0 0.84279732
28 1 0.53941171
29 1 0.26955907
30 1 -0.37445863
36 0 2.07344269
37 1 -0.27767886
38 0 0.98779768
40 0 -0.56381309
41 0 -0.48689556
42 0 0.15426730
43 0 -0.45793696
44 1 0.58855694
45 0 2.03151142
46 1 -1.12138836
47 0 -0.22278788
48 0 -0.37587580
49 0 -0.14725993
50 0 -0.59214038
51 1 0.03070778
52 1 -2.89091363
53 0 0.17685338
54 0 2.05313093
55 0 -0.67942872
56 0 0.61553820
57 1 -3.11976776
58 1 -1.31992975
59 1 -0.44527415
60 0 -0.36428548
62 0 1.86417789
63 0 0.47977439
64 0 -0.65182028
65 0 0.39441216
$anovaDFoutput
Eta-squared Wilks_Lambda F df df_res p
Function 1 0.2093297 0.7906703 12.70798 1 48 0.0008360521
Bayes_Factor_alt_vs_null Bayes_Factor_null_vs_alt
Function 1 36.07436 0.02772052
$anovaDVoutput
Eta-squared Wilks_Lambda F df df_res p
Glucose 0.15850104 0.8414990 9.041069 1 48 0.004191827
BloodPressure 0.03814674 0.9618533 1.903662 1 48 0.174062705
SkinThickness 0.05843508 0.9415649 2.978960 1 48 0.090786135
BMI 0.08113904 0.9188610 4.238589 1 48 0.044963910
Bayes_Factor_alt_vs_null Bayes_Factor_null_vs_alt
Glucose 9.6380243 0.1037557
BloodPressure 0.6184251 1.6170107
SkinThickness 0.9496574 1.0530114
BMI 1.5588516 0.6414979
$Glucose
$Glucose$MFWER1.sigtest
Group1 Group2 t t1-critical t1 decision Confidence Level
1 1 0 -2.834597 2.587796 significant 0.9872585
$Glucose$MFWER2.sigtest
Group1 Group2 t t2-critical t2 decision
1 1 0 -2.834597 2.47392 significant
$BloodPressure
$BloodPressure$MFWER1.sigtest
Group1 Group2 t t1-critical t1 decision Confidence Level
1 1 0 -1.396735 2.587796 not significant 0.9872585
$BloodPressure$MFWER2.sigtest
Group1 Group2 t t2-critical t2 decision
1 1 0 -1.396735 2.47392 not significant
$SkinThickness
$SkinThickness$MFWER1.sigtest
Group1 Group2 t t1-critical t1 decision Confidence Level
1 1 0 -1.762656 2.587796 not significant 0.9872585
$SkinThickness$MFWER2.sigtest
Group1 Group2 t t2-critical t2 decision
1 1 0 -1.762656 2.47392 not significant
$BMI
$BMI$MFWER1.sigtest
Group1 Group2 t t1-critical t1 decision Confidence Level
1 1 0 -2.10108 2.587796 not significant 0.9872585
$BMI$MFWER2.sigtest
Group1 Group2 t t2-critical t2 decision
1 1 0 -2.10108 2.47392 not significant
$classes_PRED
[1] 1 0 0 0 1 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 1 0 1
[39] 0 0 1 0 1 1 1 0 0 0 1 0
Levels: 0 1
$classes_CV
[1] 1 0 0 0 1 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 1 1 0 1 0 1
[39] 0 0 1 0 1 1 0 1 0 0 1 0
Levels: 0 1
$posteriors
posterior_0 posterior_1 Group
1 0.26589766 0.73410234 1
2 0.87654413 0.12345587 0
3 0.79042694 0.20957306 0
4 0.79403642 0.20596358 1
5 0.29084477 0.70915523 1
6 0.33963543 0.66036457 1
7 0.79075910 0.20924090 1
8 0.54551850 0.45448150 1
9 0.44158113 0.55841887 0
10 0.68296440 0.31703560 1
11 0.39732077 0.60267923 1
12 0.53335351 0.46664649 1
13 0.87155117 0.12844883 0
14 0.63354399 0.36645601 0
15 0.61757679 0.38242321 0
16 0.24519270 0.75480730 1
17 0.87313968 0.12686032 0
18 0.67921997 0.32078003 0
19 0.78024793 0.21975207 0
20 0.72256491 0.27743509 1
21 0.66409143 0.33590857 1
22 0.50593788 0.49406212 1
23 0.92581740 0.07418260 0
24 0.53061360 0.46938640 1
25 0.80458821 0.19541179 0
26 0.45768586 0.54231414 0
27 0.47724188 0.52275812 0
28 0.63733519 0.36266481 0
29 0.48462589 0.51537411 0
30 0.73251481 0.26748519 1
31 0.92282165 0.07717835 0
32 0.32318032 0.67681968 1
33 0.54455051 0.45544949 0
34 0.50557604 0.49442396 0
35 0.56360933 0.43639067 0
36 0.45051326 0.54948674 0
37 0.60768881 0.39231119 1
38 0.07265079 0.92734921 1
39 0.64265059 0.35734941 0
40 0.92437983 0.07562017 0
41 0.42855300 0.57144700 0
42 0.73788008 0.26211992 0
43 0.05839104 0.94160896 1
44 0.28049786 0.71950214 1
45 0.48785702 0.51214298 1
46 0.50853516 0.49146484 0
47 0.90973430 0.09026570 0
48 0.71018939 0.28981061 0
49 0.43547265 0.56452735 0
50 0.69192010 0.30807990 0
$grp_post_stats
$grp_post_stats$groupNs
0 1
29 21
$grp_post_stats$grpMNprobs
0 1
0.6664659 0.529928
$grp_post_stats$grp_prob_Ns
Classif. prob. 0 1
0.00 29 21
0.10 29 21
0.20 29 21
0.30 29 17
0.40 29 14
0.50 22 10
0.60 18 9
0.70 12 6
0.75 10 3
0.80 8 2
0.85 7 2
0.90 4 2
0.95 0 0
1.00 0 0
$grp_post_stats$grp_prob_proports
Classif. prob. 0 1
0.00 1.0000000 1.0000000
0.10 1.0000000 1.0000000
0.20 1.0000000 1.0000000
0.30 1.0000000 0.8095238
0.40 1.0000000 0.6666667
0.50 0.7586207 0.4761905
0.60 0.6206897 0.4285714
0.70 0.4137931 0.2857143
0.75 0.3448276 0.1428571
0.80 0.2758621 0.0952381
0.85 0.2413793 0.0952381
0.90 0.1379310 0.0952381
0.95 0.0000000 0.0000000
1.00 0.0000000 0.0000000
$freqs_ORIG_PRED
Predicted
Original 0 1
0 22 7
1 11 10
$chi_square_ORIG_PRED
Number of cases in table: 50
Number of factors: 2
Test for independence of all factors:
Chisq = 2.9927, df = 1, p-value = 0.08364
$PressQ_ORIG_PRED
[1] 3.92
$kappas_ORIG_PRED
kappa z p
Cohen's kappa 0.241 1.620 0.10524
Fleiss's kappa 0.236 1.669 0.09518
$PropOrigCorrect
[1] 0.64
$freqs_ORIG_CV
Cross-Validated
Original 0 1
0 19 10
1 12 9
$chi_square_ORIG_CV
Number of cases in table: 50
Number of factors: 2
Test for independence of all factors:
Chisq = 0.3626, df = 1, p-value = 0.5471
$PressQ_ORIG_CV
[1] 0.72
$kappas_ORIG_CV
kappa z p
Cohen's kappa 0.085 0.577 0.56366
Fleiss's kappa 0.083 0.589 0.55568
$PropCrossValCorrect
[1] 0.56
> pembedaterkuat$coefs_standardized
Function 1
Glucose -0.9057141
BloodPressure 0.2886809
SkinThickness -0.0996777
BMI -0.5008734
>
> # Membuat tabel klasifikasi dan menguji ketepatan model
> pred_LDA1<- predict(modellda, dataakhir)
> conf <- table(actual=dataakhir$Outcome, predicted=pred_LDA1$class)
> conf
predicted
actual 0 1
0 22 7
1 11 10
>
> hitrasio <- sum(diag(prop.table(conf)))
> hitrasio
[1] 0.64
\[ \begin{array}{} \\ H_0 : \text{Data variabel independen mengikuti distribusi normal multivariat} \\ H_1 : \text{Data variabel independen tidak mengikuti distribusi normal multivariat} \end{array} \]
Berdasarkan hasil uji normalitas multivariat menggunakan Royston’s Test, diperoleh nilai H sebesar 6.104082 dengan p-value sebesar 0.1926. Karena p-value lebih besar dari tingkat signifikansi 0.05, maka keputusan uji adalah gagal menolak hipotesis nol, sehingga data dianggap memenuhi asumsi normalitas multivariat. Hal ini berarti kombinasi variabel prediktor yang terdiri dari Glucose, BloodPressure, SkinThickness, dan BMI memiliki distribusi normal secara multivariat. Selain itu, hasil uji normalitas univariat menggunakan Anderson-Darling menunjukkan bahwa keempat variabel tersebut masing-masing juga memenuhi asumsi normalitas dengan p-value lebih besar dari 0.05 untuk setiap variabel. Dengan demikian, dapat disimpulkan bahwa dataset ini telah memenuhi asumsi normalitas, baik secara multivariat maupun univariat, sehingga dapat digunakan untuk analisis diskriminan tanpa pelanggaran asumsi.
\[ \begin{array}{} \\ H_0 : \text{Tidak terdapat perbedaan dalam matriks kovarians (ragam peragam) antar kelompok hasil diagnosis} \\ H_1 : \text{Terdapat perbedaan dalam matriks kovarians (ragam peragam) antar kelompok hasil diagnosis} \end{array} \]
> boxM_data
Box's M-test for Homogeneity of Covariance Matrices
data: data
Chi-Sq (approx.) = 5.487, df = 10, p-value = 0.8564Berdasarkan hasil Box’s M-test for Homogeneity of Covariance Matrices, diperoleh nilai statistik Chi-Square sebesar 5.487 dengan derajat kebebasan (df) sebesar 10 dan nilai p-value sebesar 0.8564. Karena nilai p-value (0.8564) lebih besar dari tingkat signifikansi α = 0.05, maka keputusan yang diambil adalah menerima H0. Hal ini berarti asumsi homogenitas matriks ragam peragam terpenuhi. Dengan kata lain, variabel-variabel prediktor pada kelompok-kelompok kategori variabel Outcome (0: Tidak Diabetes, 1: Diabetes) memiliki matriks kovariansi yang homogen.
\[ \begin{array}{} \\ H_0 : \text{Tidak terdapat perbedaan rata-rata antar kategori pada variabel dependen} \\ H_1 : \text{Terdapat perbedaan rata-rata antar kategori pada variabel dependen} \end{array} \]
> X.wilks
Df Wilks approx F num Df den Df Pr(>F)
dataakhir$Outcome 1 0.79067 2.9784 4 45 0.02894 *
Residuals 48
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1Berdasarkan hasil uji MANOVA (Multivariate Analysis of Variance) dengan Wilks’ Lambda, diperoleh nilai Wilks’ Lambda = 0.79067, nilai statistik F sebesar 2.9784, dengan derajat kebebasan numerator (num Df) = 4 dan denominator (den Df) = 45, serta nilai p-value sebesar 0.02894. Karena nilai p-value (0.02894) lebih kecil dari tingkat signifikansi α = 0.05, maka keputusan yang diambil adalah menolak H0. Hal ini menunjukkan bahwa terdapat perbedaan yang signifikan pada rata-rata multivariat (gabungan rata-rata) dari variabel-variabel prediktor (Glucose, BloodPressure, SkinThickness, BMI) antara kelompok Outcome (0: Tidak Diabetes dan 1: Diabetes).
Fungsi diskriminan kanonik menunjukkan bahwa ada hubungan yang signifikan antara variabel-variabel prediktor (Glucose, BloodPressure, SkinThickness, BMI) dengan variabel respon (Outcome). Fungsi diskriminan ini dapat digunakan untuk memisahkan atau mengelompokkan individu ke dalam kategori Outcome berdasarkan kombinasi nilai variabel prediktor. Kontribusi fungsi diskriminan sebesar 20.93% cukup memadai untuk menjelaskan perbedaan antara kelompok, meskipun masih terdapat variabilitas yang tidak terjelaskan oleh model.
> modellda
Call:
lda(Outcome ~ ., data = dataakhir)
Prior probabilities of groups:
0 1
0.58 0.42
Group means:
Glucose BloodPressure SkinThickness BMI
0 107.931 71.62069 26.89655 31.11034
1 128.381 75.61905 32.47619 34.57143
Coefficients of linear discriminants:
LD1
Glucose 0.038553450
BloodPressure -0.028839321
SkinThickness 0.008926434
BMI 0.086254208Berdasarkan output tersebut, dapat dibentuk fungsi diskriminan sebagai berikut: \[ Y=0.038553450X_1-0.028839321X_2+0.008926434X_3+0.086254208X_4 \] \[ \begin{array}{l} \text{Di mana:}\\ \text{Variabel } X_1 \text{ adalah variabel Glucose} \\ \text{Variabel } X_2 \text{ adalah variabel BloodPressure} \\ \text{Variabel } X_3 \text{ merupakan variabel SkinThickness} \\ \text{Variabel } X_4 \text{ merupakan variabel BMI} \end{array} \]
Interpretasi: Variabel Glucose memiliki pengaruh positif terhadap fungsi diskriminan linier (LD1). Artinya, semakin tinggi kadar gula darah (glucose), semakin besar kemungkinan individu tersebut digolongkan ke dalam kelompok diabetes (kelompok 1). Koefisien yang positif menunjukkan bahwa Glucose adalah variabel yang mendukung klasifikasi individu sebagai penderita diabetes.
Interpretasi: Variabel BloodPressure memiliki pengaruh negatif terhadap fungsi diskriminan linier (LD1). Koefisien negatif menunjukkan bahwa peningkatan tekanan darah justru mengurangi kemungkinan individu tersebut digolongkan ke dalam kelompok diabetes (kelompok 1). Dalam hal ini, meskipun BloodPressure tetap berperan dalam perbedaan antara kelompok, pengaruhnya lebih kecil dibandingkan variabel-variabel lain yang memiliki koefisien positif.
Interpretasi: Variabel SkinThickness juga memiliki pengaruh positif terhadap fungsi diskriminan linier (LD1). Meskipun koefisien ini relatif kecil, namun tetap menunjukkan bahwa semakin tebal kulit (skin thickness), semakin besar kemungkinan individu tersebut tergolong ke dalam kelompok diabetes (kelompok 1). Pengaruh SkinThickness dalam model ini cukup lemah jika dibandingkan dengan variabel lainnya, seperti Glucose dan BMI.
Interpretasi: Variabel BMI memiliki pengaruh yang cukup kuat terhadap fungsi diskriminan linier (LD1) dengan koefisien yang relatif besar. Koefisien positif ini menunjukkan bahwa semakin tinggi indeks massa tubuh (BMI), semakin besar kemungkinan individu tersebut digolongkan ke dalam kelompok diabetes. Ini menunjukkan bahwa obesitas atau kelebihan berat badan adalah faktor risiko yang signifikan untuk diabetes dalam model ini.
> pembedaterkuat$coefs_standardized
Function 1
Glucose -0.9057141
BloodPressure 0.2886809
SkinThickness -0.0996777
BMI -0.5008734Berdasarkan semua hasil uji yang dilakukan, dapat disimpulkan bahwa terdapat perbedaan yang signifikan antara individu yang menderita diabetes dan yang tidak berdasarkan variabel Glucose, BloodPressure, SkinThickness, dan BMI.
Koefisien standar untuk masing-masing variabel prediktor dalam fungsi diskriminan pertama adalah sebagai berikut:
Glucose: -0.9057141 Interpretasi: Koefisien negatif menunjukkan bahwa semakin tinggi kadar glukosa, semakin besar kemungkinan seseorang digolongkan ke dalam kelompok tidak diabetes. Pengaruh Glucose cukup besar, mengingat nilai koefisien yang besar secara absolut.
BloodPressure: 0.2886809 Interpretasi: Koefisien positif menunjukkan bahwa semakin tinggi tekanan darah, semakin besar kemungkinan seseorang digolongkan ke dalam kelompok diabetes. Pengaruh BloodPressure relatif lebih kecil dibandingkan dengan Glucose.
SkinThickness: -0.0996777 Interpretasi: Koefisien negatif ini menunjukkan bahwa semakin besar ketebalan kulit, semakin besar kemungkinan seseorang digolongkan ke dalam kelompok tidak diabetes. Pengaruhnya relatif kecil.
BMI: -0.5008734 Interpretasi: Koefisien negatif untuk BMI menunjukkan bahwa semakin tinggi BMI, semakin besar kemungkinan seseorang digolongkan ke dalam kelompok tidak diabetes. Pengaruh BMI cukup signifikan namun lebih kecil daripada Glucose.
> pred_LDA1<- predict(modellda, dataakhir)
> conf <- table(actual=dataakhir$Outcome, predicted=pred_LDA1$class)
> conf
predicted
actual 0 1
0 22 7
1 11 10Confusion matrix menunjukkan hasil prediksi model dibandingkan dengan nilai sebenarnya (actual), yaitu : - 22: Jumlah kasus di mana model memprediksi “Tidak Diabetes” (0) dan hasil sebenarnya adalah “Tidak Diabetes” (0), yang benar (True Negative, TN).
7: Jumlah kasus di mana model memprediksi “Tidak Diabetes” (0) tetapi hasil sebenarnya adalah “Diabetes” (1), yang salah (False Negative, FN).
11: Jumlah kasus di mana model memprediksi “Diabetes” (1) tetapi hasil sebenarnya adalah “Tidak Diabetes” (0), yang salah (False Positive, FP).
10: Jumlah kasus di mana model memprediksi “Diabetes” (1) dan hasil sebenarnya juga “Diabetes” (1), yang benar (True Positive, TP).
Akurasi model diskriminan linear (LDA) yang dihasilkan adalah 64%, yang berarti model berhasil memprediksi status diabetes dengan benar pada 64% dari total sampel. Hasil ini menunjukkan kinerja model yang moderat, dengan tingkat prediksi yang cukup baik namun masih ada ruang untuk perbaikan. Meskipun model berhasil mengklasifikasikan sejumlah besar kasus dengan benar, ada beberapa kesalahan prediksi, terutama dalam mengidentifikasi individu yang sebenarnya mengidap diabetes sebagai bukan diabetes, dan sebaliknya. Oleh karena itu, meskipun akurasi ini menunjukkan kemampuan model untuk melakukan klasifikasi, evaluasi lebih lanjut dan penyempurnaan model mungkin diperlukan untuk mencapai tingkat ketepatan yang lebih tinggi.
Berdasarkan hasil analisis diskriminan yang dilakukan dalam penelitian ini, dapat disimpulkan bahwa model diskriminan linear (LDA) memiliki potensi untuk memprediksi status diabetes seseorang dengan menggunakan variabel-variabel prediktor yang telah disediakan, yaitu Glucose, BloodPressure, SkinThickness, dan BMI. Dalam penelitian ini, dilakukan pengujian terhadap asumsi normalitas multivariat, di mana meskipun hasil menunjukkan ketidaksesuaian pada beberapa variabel, uji homogenitas ragam peragam (Box’s M) menunjukkan bahwa asumsi homogenitas varians antar kelompok telah terpenuhi dengan baik, yang memungkinkan analisis lanjut menggunakan metode diskriminan.
Hasil uji MANOVA menunjukkan adanya perbedaan yang signifikan antara kelompok diabetes dan non-diabetes berdasarkan variabel-variabel yang digunakan. Hal ini menjawab rumusan masalah pertama yang menanyakan apakah terdapat perbedaan rata-rata antara kelompok yang memiliki diabetes dan yang tidak berdasarkan variabel-variabel prediktor tersebut. Dengan p-value 0,02894 (di bawah 0,05), dapat disimpulkan bahwa perbedaan tersebut signifikan.
Berdasarkan analisis canonical discriminant, didapatkan nilai canonical correlation sebesar 0,4575, yang menunjukkan bahwa variabel-variabel prediktor secara kolektif menjelaskan sekitar 20,93% variasi dalam status diabetes. Dari keempat variabel prediktor yang diuji, BMI memberikan kontribusi terbesar terhadap pemisahan antara kelompok diabetes dan non-diabetes, diikuti oleh Glucose dan BloodPressure, sementara SkinThickness memiliki kontribusi yang lebih kecil. Ini menjawab rumusan masalah kedua mengenai kontribusi variabel-variabel terhadap pemisahan antara kedua kelompok status diabetes dan non-diabetes.
Model diskriminan yang dibangun menghasilkan akurasi sebesar 64%, dengan tingkat kesalahan klasifikasi yang relatif tinggi. Dari 50 observasi yang diuji, 22 individu yang tidak diabetes dan 10 individu yang diabetes berhasil diklasifikasikan dengan benar, sementara sisanya salah diklasifikasikan. Angka akurasi ini menjawab rumusan masalah ketiga yang bertanya tentang ketepatan model dalam mengklasifikasikan status diabetes, meskipun tingkat akurasi tersebut masih dapat ditingkatkan dengan pengembangan lebih lanjut pada model atau penambahan variabel-variabel lain.
Dengan demikian, tujuan penelitian yang mengkaji apakah model diskriminan dapat digunakan untuk memprediksi status diabetes telah tercapai. Penelitian ini juga berhasil menjawab tujuan untuk mengevaluasi kontribusi variabel-variabel klinis terhadap prediksi status diabetes. Meskipun hasil menunjukkan bahwa model diskriminan dapat memberikan informasi yang berharga tentang faktor-faktor yang mempengaruhi status diabetes, akurasi yang masih tergolong rendah menunjukkan adanya ruang untuk perbaikan model, baik melalui pemilihan variabel yang lebih relevan atau penerapan metode yang lebih canggih untuk meningkatkan ketepatan prediksi.
Secara keseluruhan, penelitian ini menunjukkan bahwa analisis diskriminan merupakan alat yang berguna untuk memahami faktor-faktor yang mempengaruhi status diabetes. Hasil dari penelitian ini diharapkan dapat memberikan kontribusi dalam upaya peningkatan model prediktif dalam bidang kesehatan, khususnya dalam deteksi dini diabetes, yang pada akhirnya dapat membantu dalam upaya pencegahan dan pengelolaan penyakit diabetes di masyarakat.
Fisher, R. A. (1936). The use of multiple measurements in taxonomic problems. Annals of Eugenics, 7(2), 179-188.
Johnson, R. A., & Wichern, D. W. (2007). Applied Multivariate Statistical Analysis (6th ed.). Pearson Prentice Hall.
Venables, W. N., & Ripley, B. D. (2002). Modern Applied Statistics with S (4th ed.). Springer.
Kleinbaum, D. G., & Klein, M. (2010). Logistic Regression: A Self-Learning Text (3rd ed.). Springer.
Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning: Data Mining, Inference, and Prediction (2nd ed.). Springer.
McLachlan, G. J. (2004). Discriminant Analysis and Statistical Pattern Recognition. Wiley-Interscience.
Sukardi, S. (2006). Statistika Multivariat: Teori dan Aplikasi. Jakarta: Penerbit Rineka Cipta.
Pawito, P. (2017). Statistika untuk Penelitian: Metode dan Aplikasi dengan SPSS. Jakarta: Penerbit Salemba Empat.
Nugroho, S. (2010). Analisis Data Multivariat dalam Penelitian. Yogyakarta: Penerbit Andi.
Dhanasekaran, S. M., & Maheswari, G. (2015). An empirical study on prediction of diabetes using data mining algorithms. Procedia Computer Science, 57, 1123-1130.
World Health Organization (WHO). (2021). Diabetes. Retrieved from https://www.who.int/news-room/fact-sheets/detail/diabetes