# Mengimpor pustaka yang diperlukan
library(biotools)
## Loading required package: MASS
## ---
## biotools version 4.2
library(candisc)
## Loading required package: heplots
## Loading required package: broom
## Warning in rgl.init(initValue, onlyNULL): RGL: unable to open X11 display
## Warning: 'rgl.init' failed, running with 'rgl.useNULL = TRUE'.
## 
## Attaching package: 'heplots'
## The following object is masked from 'package:biotools':
## 
##     boxM
## 
## Attaching package: 'candisc'
## The following object is masked from 'package:stats':
## 
##     cancor
library(MASS)
library(caret)
## Loading required package: ggplot2
## Loading required package: lattice
library(readxl)
library(moments)
library(ggplot2)

# Membaca Data dari File Excel
datadiskriminan <- read_excel('data simulasi.xlsx')
head(datadiskriminan)
## # A tibble: 6 × 7
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah  Usia
##           <dbl>            <dbl>                       <dbl>         <dbl> <dbl>
## 1             1              205                         300           104    52
## 2             2              168                         300           113    58
## 3             2              210                         300           100    70
## 4             2              158                         340           100    46
## 5             2              245                         347           117    61
## 6             2              158                         390           115    60
## # ℹ 2 more variables: Berat_Badan <dbl>, Diabetes_Melitus <dbl>
# Menghitung Standar Deviasi untuk Setiap Variabel
std_dev <- apply(datadiskriminan[, 1:6], 2, sd)
print(std_dev)
##               Jenis_Kelamin            Gula_Darah_Puasa 
##                   0.4963042                  73.8878098 
## Gula_Darah_Jam_Pos_Prandial               Tekanan_Darah 
##                  63.3469012                   6.9684026 
##                        Usia                 Berat_Badan 
##                   8.0512877                   9.7076650
# Pembakuan Data (Z-Score)
z_score <- scale(datadiskriminan[, 1:6])
z_score_data <- as.data.frame(z_score)
z_score_data$Diabetes_Melitus <- datadiskriminan$Diabetes_Melitus
head(z_score_data)
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
# Uji Asumsi Normalitas Multivariat secara Manual
shapiro_results <- apply(z_score_data[, 1:6], 2, shapiro.test)
print(shapiro_results)
## $Jenis_Kelamin
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.62939, p-value < 2.2e-16
## 
## 
## $Gula_Darah_Puasa
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.90498, p-value = 1.697e-10
## 
## 
## $Gula_Darah_Jam_Pos_Prandial
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.97961, p-value = 0.003215
## 
## 
## $Tekanan_Darah
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.99309, p-value = 0.4105
## 
## 
## $Usia
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.98728, p-value = 0.05114
## 
## 
## $Berat_Badan
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.95367, p-value = 1.916e-06
kurtosis_values <- apply(z_score_data[, 1:6], 2, kurtosis)
skewness_values <- apply(z_score_data[, 1:6], 2, skewness)

print(kurtosis_values)
##               Jenis_Kelamin            Gula_Darah_Puasa 
##                    1.078678                    2.446707 
## Gula_Darah_Jam_Pos_Prandial               Tekanan_Darah 
##                    3.062940                    2.638613 
##                        Usia                 Berat_Badan 
##                    2.440338                    3.253544
print(skewness_values)
##               Jenis_Kelamin            Gula_Darah_Puasa 
##                 -0.28049636                  0.72089751 
## Gula_Darah_Jam_Pos_Prandial               Tekanan_Darah 
##                  0.03989887                  0.06512175 
##                        Usia                 Berat_Badan 
##                  0.06757823                  0.73741438
# Fungsi untuk Uji Mardia
mardiaTest <- function(data) {
  n <- nrow(data)
  p <- ncol(data)
  S <- cov(data)
  D <- mahalanobis(data, colMeans(data), S)
  
  skewness <- sum(D^3) / n^2
  kurtosis <- sum((D^2 - p*(p+2))^2) / (6*n)
  
  skewness_test <- 1 - pchisq(skewness, df = p * (p + 1) * (p + 2) / 6)
  kurtosis_test <- 1 - pchisq(kurtosis, df = p * (p + 1) / 2)
  
  return(list(
    skewness = skewness,
    kurtosis = kurtosis,
    skewness_p_value = skewness_test,
    kurtosis_p_value = kurtosis_test
  ))
}

mardia_results <- mardiaTest(z_score_data[, 1:6])
print(mardia_results)
## $skewness
## [1] 1.791149
## 
## $kurtosis
## [1] 344.4244
## 
## $skewness_p_value
## [1] 1
## 
## $kurtosis_p_value
## [1] 0
# Menghitung Jarak Mahalanobis
mahalanobis_distances <- mahalanobis(z_score_data[, 1:6], colMeans(z_score_data[, 1:6]), cov(z_score_data[, 1:6]))

# Menampilkan Jarak Mahalanobis
print(mahalanobis_distances)
##   [1]  3.302903 10.403062  7.563359  4.013743  2.841154  6.927135  7.330482
##   [8]  5.824415 13.855559 10.561243  2.709230  6.343351  5.258432 10.367384
##  [15]  6.371304  2.702129  2.434439  4.079689 10.613354  9.381816  5.047701
##  [22]  9.359773  3.826247  4.987148  3.953331  3.161660  2.557219 10.718360
##  [29]  3.940927 14.239956  5.433777  8.727231  4.459528  5.003449  2.371802
##  [36]  3.663036 10.438842  3.637564  3.082724  3.814762  7.272961  7.981521
##  [43] 11.209582  4.542734  8.603207  3.018609  5.609909  3.982150  6.069442
##  [50]  2.891201  4.183997  4.324541  6.205996  5.685525  3.226490  6.536451
##  [57]  4.952103  3.446623  5.781965  6.870296  4.795004  6.775750  2.093067
##  [64]  2.884114  5.721607  8.826378  4.559201  2.870625  2.487784  2.329662
##  [71]  6.341268  3.030197  6.243308  3.334498  6.823348  8.270301  2.703203
##  [78]  9.740442 11.119249  5.126365  2.973501 12.576820  4.040471  4.126404
##  [85]  2.184335  5.650509  7.166263  6.678123 10.613844  4.160122  6.740284
##  [92]  8.445388  3.756144  7.784593  4.780416  4.936509  6.116217  4.546096
##  [99]  3.730742  5.977770  8.961600  3.978433  2.378394  2.436968  2.921181
## [106] 11.378657  9.963123  9.234962  3.110419  2.587634  7.059587  7.044857
## [113]  8.333633  3.344155  5.759270  3.637244  5.679935  1.975011  7.412179
## [120]  9.096477  7.637605 10.009306  3.900205  4.182347  3.143620  5.238443
## [127]  3.769393  7.107146  7.168686  5.237983  7.843095  8.745535  2.784300
## [134] 12.229576  6.053905  7.602616  4.413651  5.998367  4.674470  6.641800
## [141]  3.262199  2.195322  7.169116 13.791371  4.106467  3.970720  5.646608
## [148]  9.151876  7.948018  4.377479  6.831316  2.196440 13.600791  4.424593
## [155]  3.230557  7.836566  2.907931  3.661100  6.516647  4.557561  9.660268
## [162]  3.337381  3.912317  2.008576  6.439764  5.170457  3.991131  3.622865
## [169]  5.937997  4.995275  4.871745  3.398749  5.682312  7.486796  5.068760
## [176]  9.691410  5.381175  4.911998  6.055570  4.271717  6.195223  2.878715
## [183]  3.085791  6.065180 10.050922  5.207102 12.987982  6.589241  5.111616
## [190]  8.193395 11.427626  6.455140  6.596590  5.986297 10.040599  6.182185
## [197]  4.096309  5.682430  8.107261  4.507613  7.321020 10.270993  5.415660
## [204]  3.051097  8.612455  6.573726 19.289445  1.477415 10.031991  5.931815
## [211]  8.372399  4.329661  7.380865  4.369650  4.912342  2.493091
# Menghitung Jarak Mahalanobis dan Menentukan Outlier
cutoff <- qchisq(0.975, df = 6)
outliers <- which(mahalanobis_distances > cutoff)
databaru <- z_score_data[-outliers,]

# Uji Normalitas Univariatif dan Multivariat pada Data Baru
shapiro_results_new <- apply(databaru[, 1:6], 2, shapiro.test)
print(shapiro_results_new)
## $Jenis_Kelamin
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.62884, p-value < 2.2e-16
## 
## 
## $Gula_Darah_Puasa
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.90379, p-value = 1.512e-10
## 
## 
## $Gula_Darah_Jam_Pos_Prandial
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.97941, p-value = 0.003098
## 
## 
## $Tekanan_Darah
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.99303, p-value = 0.4063
## 
## 
## $Usia
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.98713, p-value = 0.04928
## 
## 
## $Berat_Badan
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.95802, p-value = 5.873e-06
mardia_results_new <- mardiaTest(databaru[, 1:6])
print(mardia_results_new)
## $skewness
## [1] 1.71385
## 
## $kurtosis
## [1] 279.0904
## 
## $skewness_p_value
## [1] 1
## 
## $kurtosis_p_value
## [1] 0
# Membuat Q-Q Plot Chi-Square
qqplot_chisquare <- function(distances, df) {
  chi2_quantiles <- qchisq((1:length(distances) - 0.5) / length(distances), df)
  plot <- ggplot(data = data.frame(distances = sort(distances), chi2_quantiles = chi2_quantiles), aes(x = chi2_quantiles, y = distances)) +
    geom_point() +
    geom_abline(slope = 1, intercept = 0, color = "red") +
    labs(title = "Adjusted Chi-Square Q-Q Plot", x = "Chi-Square Quantile", y = "Robust Squared Mahalanobis Distance") +
    theme_minimal()
  return(plot)
}

# Menampilkan plot
print(qqplot_chisquare(mahalanobis_distances, df = 6))

uji_bart <- function(x) {
  method = "Bartlett's test of sphericity"
  data.name = deparse(substitute(x))
  x = subset(x, complete.cases(x))
  n = nrow(x)
  p = ncol(x)
  chisq = (1 - n + (2 * p + 5) / 6) * log(det(cor(x)))
  df = p * (p - 1) / 2
  p.value = pchisq(chisq, df, lower.tail = FALSE)
  names(chisq) = "Khi-squared"
  names(df) = "df"
  return(structure(list(statistic = chisq, parameter = df, p.value = p.value,
                        method = method, data.name = data.name), class = "htest"))
}

print(uji_bart(databaru[, 1:6]))
## 
##  Bartlett's test of sphericity
## 
## data:  databaru[, 1:6]
## Khi-squared = 142.94, df = 15, p-value < 2.2e-16
X <- as.matrix(databaru[, 1:6])
X.manova <- manova(X ~ databaru$Diabetes_Melitus)
X.wilks <- summary(X.manova, test = "Wilks")
print(X.wilks)
##                            Df   Wilks approx F num Df den Df    Pr(>F)    
## databaru$Diabetes_Melitus   1 0.26852   94.435      6    208 < 2.2e-16 ***
## Residuals                 213                                             
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
cc <- candisc(X.manova)
print(cc)
## 
## Canonical Discriminant Analysis for databaru$Diabetes_Melitus:
## 
##    CanRsq Eigenvalue Difference Percent Cumulative
## 1 0.73148     2.7241                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.26852   94.435     6   208 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
set.seed(123)  # untuk reprodusibilitas
folds <- createFolds(databaru$Diabetes_Melitus, k = 10)

accuracy <- c()

for(i in 1:10) {
  cat("\nFold", i, "\n")
  
  # Data latih dan uji
  train_indices <- folds[[i]]
  test_indices <- setdiff(seq_len(nrow(databaru)), train_indices)
  
  train_data <- databaru[train_indices, ]
  test_data <- databaru[test_indices, ]
  
  cat("Train Indices:\n", train_indices, "\n")
  cat("Test Indices:\n", test_indices, "\n")
  
  cat("Train Data (first 6 rows):\n")
  print(head(train_data))
  
  cat("Test Data (first 6 rows):\n")
  print(head(test_data))
  
  # Membuat model LDA
  model_lda <- lda(Diabetes_Melitus ~ ., data = train_data)
  
  # Prediksi pada data uji
  predictions <- predict(model_lda, test_data)$class
  
  # Menghitung akurasi
  conf_matrix <- table(test_data$Diabetes_Melitus, predictions)
  cat("Confusion Matrix:\n")
  print(conf_matrix)
  
  accuracy[i] <- sum(diag(conf_matrix)) / sum(conf_matrix)
}
## 
## Fold 1 
## Train Indices:
##  6 20 28 44 49 50 75 82 99 112 129 136 138 151 161 165 169 182 191 193 199 
## Test Indices:
##  1 2 3 4 5 7 8 9 10 11 12 13 14 15 16 17 18 19 21 22 23 24 25 26 27 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 47 48 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 76 77 78 79 80 81 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 100 101 102 103 104 105 106 107 108 109 110 111 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 130 131 132 133 134 135 137 139 140 141 142 143 144 145 146 147 148 149 150 152 153 154 155 156 157 158 159 160 162 163 164 166 167 168 170 171 172 173 174 175 176 177 178 179 180 181 183 184 185 186 187 188 189 190 192 194 195 196 197 198 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 6      0.8675235       -1.0749530                   0.8718892     0.9852675
## 20     0.8675235       -0.7095342                  -2.3011152     0.9852675
## 28    -1.1473699        2.2002828                   2.4504984    -1.3825635
## 44     0.8675235       -1.1832253                   0.2404456     0.2677430
## 49     0.8675235       -0.3711834                  -0.8014365    -0.7367914
## 50     0.8675235        0.8468795                   0.7140283     0.1242380
##          Usia Berat_Badan Diabetes_Melitus
## 6   0.4962399  0.01144571                1
## 20 -1.2426124 -0.09156567                2
## 28  0.8688511 -0.50361121                2
## 44 -1.3668161 -0.91565674                1
## 49  1.6140735 -0.19457706                2
## 50  0.3720362  0.93854816                2
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 7    -1.1473699        2.2002828                  1.58226337     0.9135151
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 7  1.8624810  0.01144571                2
## Confusion Matrix:
##    predictions
##       1   2
##   1  69  10
##   2   6 109
## 
## Fold 2 
## Train Indices:
##  10 13 26 36 42 60 67 68 72 79 92 97 107 109 110 114 149 158 160 189 207 209 
## Test Indices:
##  1 2 3 4 5 6 7 8 9 11 12 14 15 16 17 18 19 20 21 22 23 24 25 27 28 29 30 31 32 33 34 35 37 38 39 40 41 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 61 62 63 64 65 66 69 70 71 73 74 75 76 77 78 80 81 82 83 84 85 86 87 88 89 90 91 93 94 95 96 98 99 100 101 102 103 104 105 106 108 111 112 113 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 150 151 152 153 154 155 156 157 159 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 208 210 211 212 213 214 215 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 10     0.8675235       -0.7772043                   1.0297502   -0.09101932
## 13     0.8675235       -0.6553980                  -0.2331372   -1.95658317
## 26     0.8675235       -0.8990106                  -1.3381636   -0.80854388
## 36     0.8675235       -1.0478850                  -0.5488590   -1.52606844
## 42    -1.1473699       -0.6824661                   1.0297502   -1.88483072
## 60    -1.1473699       -0.1005027                  -1.3223775   -1.31081107
##          Usia Berat_Badan Diabetes_Melitus
## 10 -0.9942049  1.76263923                1
## 13  0.3720362  0.01144571                1
## 26 -0.8700012  0.62951401                1
## 36 -0.7457974  0.11445709                1
## 42 -0.3731862 -0.91565674                1
## 60  0.2478325 -0.60662259                2
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
## Confusion Matrix:
##    predictions
##       1   2
##   1  71   4
##   2   8 110
## 
## Fold 3 
## Train Indices:
##  1 4 22 25 32 34 37 41 43 51 64 86 102 106 117 124 141 155 171 183 195 212 
## Test Indices:
##  2 3 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 23 24 26 27 28 29 30 31 33 35 36 38 39 40 42 44 45 46 47 48 49 50 52 53 54 55 56 57 58 59 60 61 62 63 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 103 104 105 107 108 109 110 111 112 113 114 115 116 118 119 120 121 122 123 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 142 143 144 145 146 147 148 149 150 151 152 153 154 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 172 173 174 175 176 177 178 179 180 181 182 184 185 186 187 188 189 190 191 192 193 194 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 213 214 215 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1     -1.1473699       -0.4388535                 -0.54885903   -0.59328651
## 4      0.8675235       -1.0749530                  0.08258465   -1.16730616
## 22    -1.1473699       -0.3711834                 -0.95929741   -1.02380125
## 25     0.8675235       -1.0208169                  0.55616740    0.05248559
## 32     0.8675235       -0.9802148                 -0.23313719    2.06155436
## 34     0.8675235        0.5085287                 -0.31206765    1.12877243
##          Usia Berat_Badan Diabetes_Melitus
## 1  -0.4973900 -0.91565674                1
## 4  -1.2426124 -0.09156567                1
## 22  1.1172586  1.96866199                2
## 25 -0.8700012 -1.01866812                1
## 32 -0.9942049 -1.22469089                1
## 34 -0.4973900  1.45360508                2
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 2     0.8675235       -0.9396127                  -0.5488590     0.6982577
## 3     0.8675235       -0.3711834                  -0.5488590    -1.1673062
## 5     0.8675235        0.1025078                   0.1930873     1.2722773
## 6     0.8675235       -1.0749530                   0.8718892     0.9852675
## 7    -1.1473699        2.2002828                   1.5822634     0.9135151
## 8    -1.1473699       -0.5065237                  -1.4960245     1.3440298
##         Usia Berat_Badan Diabetes_Melitus
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
## 7  1.8624810  0.01144571                2
## 8 -0.1247788  0.62951401                2
## Confusion Matrix:
##    predictions
##       1   2
##   1  68  10
##   2  15 100
## 
## Fold 4 
## Train Indices:
##  2 18 31 39 55 63 77 88 89 94 96 101 108 139 163 164 166 184 200 206 215 
## Test Indices:
##  1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 19 20 21 22 23 24 25 26 27 28 29 30 32 33 34 35 36 37 38 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 56 57 58 59 60 61 62 64 65 66 67 68 69 70 71 72 73 74 75 76 78 79 80 81 82 83 84 85 86 87 90 91 92 93 95 97 98 99 100 102 103 104 105 106 107 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 165 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 201 202 203 204 205 207 208 209 210 211 212 213 214 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 2      0.8675235       -0.9396127                  -0.5488590     0.6982577
## 18     0.8675235       -0.7772043                   0.7929588     0.6265052
## 31    -1.1473699       -0.5065237                  -1.1803027     0.4112479
## 39     0.8675235       -0.8584085                   0.5561674     0.2677430
## 55    -1.1473699       -0.6824661                   0.3509482     0.6982577
## 63     0.8675235        0.1025078                  -0.5488590    -0.2345242
##          Usia Berat_Badan Diabetes_Melitus
## 2   0.2478325  2.68974168                1
## 18 -0.6215937  0.01144571                1
## 31 -1.3668161  1.04155954                2
## 39 -0.3731862 -0.81264536                1
## 55 -0.1247788 -0.09156567                1
## 63  0.2478325 -0.50361121                2
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
## 7    -1.1473699        2.2002828                  1.58226337     0.9135151
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
## 7  1.8624810  0.01144571                2
## Confusion Matrix:
##    predictions
##      1  2
##   1 77  0
##   2 30 87
## 
## Fold 5 
## Train Indices:
##  9 17 33 35 70 71 81 95 98 115 119 121 122 134 153 157 159 181 185 202 210 
## Test Indices:
##  1 2 3 4 5 6 7 8 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 34 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 72 73 74 75 76 77 78 79 80 82 83 84 85 86 87 88 89 90 91 92 93 94 96 97 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 116 117 118 120 123 124 125 126 127 128 129 130 131 132 133 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 154 155 156 158 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 182 183 184 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 203 204 205 206 207 208 209 211 212 213 214 215 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 9     -1.1473699        0.8468795                  -0.2331372    0.19599050
## 17     0.8675235        1.1040261                   0.6982422   -0.01926686
## 33     0.8675235       -0.8854766                   0.3983065    0.19599050
## 35     0.8675235       -0.5065237                  -0.7067199    0.12423805
## 70     0.8675235        0.7115392                  -0.3909981   -0.23452423
## 71    -1.1473699       -0.9802148                   0.8718892    0.98526752
##             Usia Berat_Badan Diabetes_Melitus
## 9  -2.6088534290 -0.60662259                2
## 17  0.3720361844 -0.29758844                2
## 33 -0.9942048884  0.83553678                1
## 35  0.7446473861  0.01144571                1
## 70 -0.0005750173  0.21746848                2
## 71  0.1236287166 -0.81264536                1
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
## Confusion Matrix:
##    predictions
##       1   2
##   1  77   2
##   2  13 102
## 
## Fold 6 
## Train Indices:
##  14 21 24 38 53 54 56 57 65 84 90 93 100 118 123 132 133 156 167 175 194 214 
## Test Indices:
##  1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20 22 23 25 26 27 28 29 30 31 32 33 34 35 36 37 39 40 41 42 43 44 45 46 47 48 49 50 51 52 55 58 59 60 61 62 63 64 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 85 86 87 88 89 91 92 94 95 96 97 98 99 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 119 120 121 122 124 125 126 127 128 129 130 131 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 157 158 159 160 161 162 163 164 165 166 168 169 170 171 172 173 174 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 215 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 14      -1.14737      -0.77720433                  -1.9696073     1.2005249
## 21      -1.14737       0.33258631                  -0.2331372     0.1959905
## 24      -1.14737      -0.50652369                  -0.7067199    -0.2345242
## 38      -1.14737       1.38824083                   0.7929588    -0.3780291
## 53      -1.14737      -0.03283256                  -0.5488590     0.3394954
## 54      -1.14737      -0.50652369                  -0.5488590    -1.2390586
##             Usia Berat_Badan Diabetes_Melitus
## 14 -1.1184086223   1.9686620                2
## 21  1.7382772572  -0.4005998                2
## 24 -1.2426123562  -1.1216795                2
## 38 -0.0005750173   0.1144571                2
## 53  1.7382772572   0.8355368                2
## 54  0.6204436522  -1.0186681                1
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
## Confusion Matrix:
##    predictions
##       1   2
##   1  66  14
##   2   9 104
## 
## Fold 7 
## Train Indices:
##  7 11 15 23 45 62 66 78 83 91 103 104 113 120 125 126 127 131 152 180 213 
## Test Indices:
##  1 2 3 4 5 6 8 9 10 12 13 14 16 17 18 19 20 21 22 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 63 64 65 67 68 69 70 71 72 73 74 75 76 77 79 80 81 82 84 85 86 87 88 89 90 92 93 94 95 96 97 98 99 100 101 102 105 106 107 108 109 110 111 112 114 115 116 117 118 119 121 122 123 124 128 129 130 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 214 215 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 7     -1.1473699        2.2002828                   1.5822634    0.91351506
## 11     0.8675235        0.1701779                  -0.7067199   -0.44978160
## 15    -1.1473699        0.1701779                  -0.2804955   -0.80854388
## 23    -1.1473699       -0.5065237                  -0.5488590   -0.59328651
## 45    -1.1473699       -0.6418640                  -0.2331372    0.69825770
## 62     0.8675235       -0.7095342                   0.4298787   -0.01926686
##          Usia Berat_Badan Diabetes_Melitus
## 7   1.8624810  0.01144571                2
## 11 -0.7457974  0.01144571                2
## 15  1.2414623 -1.32770227                2
## 23  0.8688511 -0.09156567                2
## 45  1.9866847 -0.40059982                1
## 62 -0.4973900  1.76263923                1
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
## Confusion Matrix:
##    predictions
##      1  2
##   1 67 14
##   2 15 98
## 
## Fold 8 
## Train Indices:
##  3 19 46 48 85 105 130 135 142 144 147 154 168 170 177 178 187 190 197 198 203 208 
## Test Indices:
##  1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 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 45 47 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 131 132 133 134 136 137 138 139 140 141 143 145 146 148 149 150 151 152 153 155 156 157 158 159 160 161 162 163 164 165 166 167 169 171 172 173 174 175 176 179 180 181 182 183 184 185 186 188 189 191 192 193 194 195 196 199 200 201 202 204 205 206 207 209 210 211 212 213 214 215 
## Train Data (first 6 rows):
##     Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 3       0.8675235      -0.37118337                  -0.5488590    -1.1673062
## 19      0.8675235      -0.50652369                  -1.4960245    -1.0238012
## 46     -1.1473699      -0.70953417                   0.3983065     0.4112479
## 48     -1.1473699       0.84687954                   0.2404456    -0.4497816
## 85      0.8675235      -0.50652369                  -0.5488590     0.1959905
## 105    -1.1473699       0.02130357                  -0.3909981    -0.2345242
##           Usia Berat_Badan Diabetes_Melitus
## 3    1.7382773   0.9385482                2
## 19  -2.1120385  -1.0186681                2
## 46  -0.1247788  -0.6066226                1
## 48  -0.8700012  -0.1945771                2
## 85  -0.2489825   1.1445709                2
## 105 -0.8700012  -0.5036112                2
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
## 7    -1.1473699        2.2002828                  1.58226337     0.9135151
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
## 7  1.8624810  0.01144571                2
## Confusion Matrix:
##    predictions
##       1   2
##   1  71   9
##   2   6 107
## 
## Fold 9 
## Train Indices:
##  12 27 29 30 40 58 59 69 80 128 145 146 148 150 172 188 192 196 204 205 211 
## Test Indices:
##  1 2 3 4 5 6 7 8 9 10 11 13 14 15 16 17 18 19 20 21 22 23 24 25 26 28 31 32 33 34 35 36 37 38 39 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 60 61 62 63 64 65 66 67 68 70 71 72 73 74 75 76 77 78 79 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 147 149 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 189 190 191 193 194 195 197 198 199 200 201 202 203 206 207 208 209 210 212 213 214 215 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 12    -1.1473699       -0.7772043                   0.4772369   -0.37802914
## 27     0.8675235       -0.7230682                   0.2404456    0.26774296
## 29    -1.1473699       -0.5065237                  -0.6277895    0.69825770
## 30     0.8675235        1.3882408                   0.8718892   -1.16730616
## 40    -1.1473699       -1.0614190                   0.2404456    0.19599050
## 58     0.8675235        0.8468795                   1.2665415    0.05248559
##          Usia Berat_Badan Diabetes_Melitus
## 12 -0.7457974   1.1445709                1
## 27  0.4962399  -0.4005998                1
## 29  0.3720362  -0.9156567                2
## 30 -0.7457974   2.5867303                2
## 40 -0.6215937  -0.8126454                1
## 58  0.6204437   0.5265026                2
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 5     0.8675235        0.1025078                  0.19308729     1.2722773
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 5  0.6204437  0.11445709                2
## 6  0.4962399  0.01144571                1
## Confusion Matrix:
##    predictions
##       1   2
##   1  62  16
##   2   3 113
## 
## Fold 10 
## Train Indices:
##  5 8 16 47 52 61 73 74 76 87 111 116 137 140 143 162 173 174 176 179 186 201 
## Test Indices:
##  1 2 3 4 6 7 9 10 11 12 13 14 15 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 45 46 48 49 50 51 53 54 55 56 57 58 59 60 62 63 64 65 66 67 68 69 70 71 72 75 77 78 79 80 81 82 83 84 85 86 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 112 113 114 115 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 138 139 141 142 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 163 164 165 166 167 168 169 170 171 172 175 177 178 180 181 182 183 184 185 187 188 189 190 191 192 193 194 195 196 197 198 199 200 202 203 204 205 206 207 208 209 210 211 212 213 214 215 
## Train Data (first 6 rows):
##    Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 5      0.8675235        0.1025078                   0.1930873    1.27227734
## 8     -1.1473699       -0.5065237                  -1.4960245    1.34402980
## 16     0.8675235        0.0348376                  -0.7067199    0.33949542
## 47     0.8675235       -0.9531468                   1.1876111   -0.09101932
## 52    -1.1473699       -0.9666808                  -0.6277895    0.62650524
## 61     0.8675235        1.1852303                   0.5561674   -0.59328651
##             Usia Berat_Badan Diabetes_Melitus
## 5   0.6204436522   0.1144571                2
## 8  -0.1247787512   0.6295140                2
## 16 -0.0005750173   1.3505937                2
## 47 -0.0005750173  -1.0186681                1
## 52 -0.7457974206  -1.0186681                1
## 61 -0.1247787512  -1.0186681                2
## Test Data (first 6 rows):
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    -1.1473699       -0.4388535                 -0.54885903    -0.5932865
## 2     0.8675235       -0.9396127                 -0.54885903     0.6982577
## 3     0.8675235       -0.3711834                 -0.54885903    -1.1673062
## 4     0.8675235       -1.0749530                  0.08258465    -1.1673062
## 6     0.8675235       -1.0749530                  0.87188924     0.9852675
## 7    -1.1473699        2.2002828                  1.58226337     0.9135151
##         Usia Berat_Badan Diabetes_Melitus
## 1 -0.4973900 -0.91565674                1
## 2  0.2478325  2.68974168                1
## 3  1.7382773  0.93854816                2
## 4 -1.2426124 -0.09156567                1
## 6  0.4962399  0.01144571                1
## 7  1.8624810  0.01144571                2
## Confusion Matrix:
##    predictions
##       1   2
##   1  65  11
##   2   8 109
# Menghitung rata-rata akurasi
mean_accuracy <- mean(accuracy)
cat("\nMean Accuracy:", mean_accuracy, "\n")
## 
## Mean Accuracy: 0.8951098
# Membuat model diskriminan linear
modellda <- lda(Diabetes_Melitus ~ ., data = databaru)
print(modellda)
## Call:
## lda(Diabetes_Melitus ~ ., data = databaru)
## 
## Prior probabilities of groups:
##         1         2 
## 0.4046512 0.5953488 
## 
## Group means:
##   Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1    0.03377455       -0.8156285                   0.1382896   -0.14462748
## 2   -0.01399232        0.5477563                  -0.1038886    0.09620975
##        Usia Berat_Badan
## 1 -0.354627  -0.3177171
## 2  0.238129   0.1893013
## 
## Coefficients of linear discriminants:
##                                     LD1
## Jenis_Kelamin                0.09172254
## Gula_Darah_Puasa             2.13669096
## Gula_Darah_Jam_Pos_Prandial -1.29933671
## Tekanan_Darah                0.10879640
## Usia                         0.04068888
## Berat_Badan                  0.14446796
# Menampilkan Koefisien Fungsi Diskriminan
print(modellda$scaling)
##                                     LD1
## Jenis_Kelamin                0.09172254
## Gula_Darah_Puasa             2.13669096
## Gula_Darah_Jam_Pos_Prandial -1.29933671
## Tekanan_Darah                0.10879640
## Usia                         0.04068888
## Berat_Badan                  0.14446796
eigen_values <- eigen(cov(databaru[, 1:6]))$values
canonical_correlations <- sqrt(eigen_values / (1 + eigen_values))
print(eigen_values)
## [1] 1.8763986 1.1146046 0.9969639 0.9138895 0.6776039 0.3758966
print(canonical_correlations)
## [1] 0.8076776 0.7260154 0.7065690 0.6910165 0.6355405 0.5226865
centroids <- aggregate(. ~ Diabetes_Melitus, data = databaru, FUN = mean)
print(centroids)
##   Diabetes_Melitus Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial
## 1                1    0.03377455       -0.8156285                   0.1382896
## 2                2   -0.01399232        0.5477563                  -0.1038886
##   Tekanan_Darah      Usia Berat_Badan
## 1   -0.14462748 -0.354627  -0.3177171
## 2    0.09620975  0.238129   0.1893013
cutting_score <- mean(modellda$means %*% modellda$scaling)
print(cutting_score)
## [1] -0.3219021
pred_LDA1 <- predict(modellda, databaru)
conf_matrix <- table(actual = databaru$Diabetes_Melitus, predicted = pred_LDA1$class)
print(conf_matrix)
##       predicted
## actual   1   2
##      1  82   5
##      2   4 124
# Menghitung Hit Ratio
hit_ratio <- sum(diag(conf_matrix)) / sum(conf_matrix)
print(hit_ratio)
## [1] 0.9581395
# Menghitung Press's Q Statistik
n <- sum(conf_matrix)
press_q <- (n - sum(diag(conf_matrix)))^2 / n
p_value <- 1 - pchisq(press_q, 1)
print(p_value)
## [1] 0.5393509
# Kesimpulan berdasarkan p-value
if (p_value < 0.05) {
  print("Model diskriminan baik")
} else {
  print("Model diskriminan tidak baik")
}
## [1] "Model diskriminan tidak baik"
# Menampilkan tabel pembakuan data
print(z_score_data)
##     Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 1      -1.1473699      -0.43885353                 -0.54885903   -0.59328651
## 2       0.8675235      -0.93961272                 -0.54885903    0.69825770
## 3       0.8675235      -0.37118337                 -0.54885903   -1.16730616
## 4       0.8675235      -1.07495304                  0.08258465   -1.16730616
## 5       0.8675235       0.10250776                  0.19308729    1.27227734
## 6       0.8675235      -1.07495304                  0.87188924    0.98526752
## 7      -1.1473699       2.20028276                  1.58226337    0.91351506
## 8      -1.1473699      -0.50652369                 -1.49602454    1.34402980
## 9      -1.1473699       0.84687954                 -0.23313719    0.19599050
## 10      0.8675235      -0.77720433                  1.02975016   -0.09101932
## 11      0.8675235       0.17017792                 -0.70671995   -0.44978160
## 12     -1.1473699      -0.77720433                  0.47723694   -0.37802914
## 13      0.8675235      -0.65539804                 -0.23313719   -1.95658317
## 14     -1.1473699      -0.77720433                 -1.96960729    1.20052489
## 15     -1.1473699       0.17017792                 -0.28049547   -0.80854388
## 16      0.8675235       0.03483760                 -0.70671995    0.33949542
## 17      0.8675235       1.10402615                  0.69824223   -0.01926686
## 18      0.8675235      -0.77720433                  0.79295878    0.62650524
## 19      0.8675235      -0.50652369                 -1.49602454   -1.02380125
## 20      0.8675235      -0.70953417                 -2.30111522    0.98526752
## 21     -1.1473699       0.33258631                 -0.23313719    0.19599050
## 22     -1.1473699      -0.37118337                 -0.95929741   -1.02380125
## 23     -1.1473699      -0.50652369                 -0.54885903   -0.59328651
## 24     -1.1473699      -0.50652369                 -0.70671995   -0.23452423
## 25      0.8675235      -1.02081691                  0.55616740    0.05248559
## 26      0.8675235      -0.89901062                 -1.33816362   -0.80854388
## 27      0.8675235      -0.72306820                  0.24044557    0.26774296
## 28     -1.1473699       2.20028276                  2.45049842   -1.38256352
## 29     -1.1473699      -0.50652369                 -0.62778949    0.69825770
## 30      0.8675235       1.38824083                  0.87188924   -1.16730616
## 31     -1.1473699      -0.50652369                 -1.18030270    0.41124787
## 32      0.8675235      -0.98021482                 -0.23313719    2.06155436
## 33      0.8675235      -0.88547659                  0.39830648    0.19599050
## 34      0.8675235       0.50852873                 -0.31206765    1.12877243
## 35      0.8675235      -0.50652369                 -0.70671995    0.12423805
## 36      0.8675235      -1.04788498                 -0.54885903   -1.52606844
## 37      0.8675235       2.47096340                  1.94534348    0.98526752
## 38     -1.1473699       1.38824083                  0.79295878   -0.37802914
## 39      0.8675235      -0.85840853                  0.55616740    0.26774296
## 40     -1.1473699      -1.06141901                  0.24044557    0.19599050
## 41      0.8675235      -1.85992691                 -1.02244178   -0.44978160
## 42     -1.1473699      -0.68246611                  1.02975016   -1.88483072
## 43     -1.1473699      -1.02081691                  0.55616740   -2.24359299
## 44      0.8675235      -1.18322530                  0.24044557    0.26774296
## 45     -1.1473699      -0.64186401                 -0.23313719    0.69825770
## 46     -1.1473699      -0.70953417                  0.39830648    0.41124787
## 47      0.8675235      -0.95314675                  1.18761108   -0.09101932
## 48     -1.1473699       0.84687954                  0.24044557   -0.44978160
## 49      0.8675235      -0.37118337                 -0.80143650   -0.73679142
## 50      0.8675235       0.84687954                  0.71402832    0.12423805
## 51      0.8675235       0.03483760                 -1.18030270    1.05701997
## 52     -1.1473699      -0.96668078                 -0.62778949    0.62650524
## 53     -1.1473699      -0.03283256                 -0.54885903    0.33949542
## 54     -1.1473699      -0.50652369                 -0.54885903   -1.23905861
## 55     -1.1473699      -0.68246611                  0.35094821    0.69825770
## 56     -1.1473699       1.92960211                  0.87188924   -0.59328651
## 57     -1.1473699       0.84687954                  0.08258465   -0.44978160
## 58      0.8675235       0.84687954                  1.26654154    0.05248559
## 59      0.8675235      -0.96668078                 -0.54885903   -1.88483072
## 60     -1.1473699      -0.10050272                 -1.32237753   -1.31081107
## 61      0.8675235       1.18523034                  0.55616740   -0.59328651
## 62      0.8675235      -0.70953417                  0.42987867   -0.01926686
## 63      0.8675235       0.10250776                 -0.54885903   -0.23452423
## 64      0.8675235      -0.57419385                 -0.54885903   -0.37802914
## 65      0.8675235      -0.84487449                  0.87188924    1.27227734
## 66      0.8675235       2.20028276                  1.34547199    1.20052489
## 67     -1.1473699      -0.95314675                 -0.31206765   -0.44978160
## 68      0.8675235      -0.92607869                  0.24044557    0.05248559
## 69      0.8675235       0.98221986                  0.65088395    0.12423805
## 70      0.8675235       0.71153921                 -0.39099811   -0.23452423
## 71     -1.1473699      -0.98021482                  0.87188924    0.98526752
## 72      0.8675235       0.44085857                 -0.54885903   -0.59328651
## 73      0.8675235      -0.65539804                 -1.18030270    0.12423805
## 74      0.8675235      -1.04788498                 -0.54885903    0.41124787
## 75     -1.1473699      -0.95314675                  1.02975016   -0.44978160
## 76     -1.1473699      -0.98021482                  0.90346142   -1.16730616
## 77     -1.1473699       0.49499470                 -0.54885903   -0.44978160
## 78     -1.1473699       1.42884292                  2.33999578    1.91804945
## 79     -1.1473699       1.99727228                  2.60835934    0.19599050
## 80      0.8675235      -1.04788498                 -0.39099811    0.62650524
## 81      0.8675235      -1.10202111                 -0.39099811   -0.44978160
## 82      0.8675235      -0.91254465                 -2.28532913    0.62650524
## 83     -1.1473699      -0.75013627                 -0.23313719   -0.09101932
## 84     -1.1473699      -0.37118337                 -0.70671995   -1.31081107
## 85      0.8675235      -0.50652369                 -0.54885903    0.19599050
## 86      0.8675235       1.92960211                  1.26654154    0.12423805
## 87      0.8675235       0.44085857                 -0.31206765   -0.44978160
## 88      0.8675235       2.15968066                  1.31389981    0.55475278
## 89     -1.1473699       0.50852873                 -2.28532913   -0.16277177
## 90      0.8675235      -0.10050272                 -1.02244178    0.26774296
## 91      0.8675235      -0.50652369                 -0.12263455    0.12423805
## 92     -1.1473699      -0.77720433                 -2.20639867    0.98526752
## 93      0.8675235      -0.61479595                  0.61931177    0.26774296
## 94      0.8675235      -0.64186401                 -2.12746821   -1.16730616
## 95      0.8675235       1.19876437                  0.80874487    0.62650524
## 96     -1.1473699      -0.96668078                 -0.70671995   -0.95204879
## 97     -1.1473699       0.84687954                  0.71402832    1.41578225
## 98      0.8675235      -0.85840853                  0.87188924    0.26774296
## 99      0.8675235      -1.06141901                 -0.70671995    0.69825770
## 100     0.8675235       1.11756018                  1.34547199    0.05248559
## 101    -1.1473699       0.50852873                 -0.62778949   -1.02380125
## 102     0.8675235       0.77920937                  1.02975016   -0.23452423
## 103     0.8675235       0.17017792                 -0.86458086   -0.37802914
## 104    -1.1473699       0.50852873                 -0.39099811    0.62650524
## 105    -1.1473699       0.02130357                 -0.39099811   -0.23452423
## 106    -1.1473699       1.79426179                  1.48754682   -2.17184054
## 107    -1.1473699      -1.18322530                 -2.44319005    0.91351506
## 108     0.8675235      -0.98021482                  0.87188924    1.70279208
## 109    -1.1473699      -0.80427240                 -0.54885903    0.19599050
## 110     0.8675235      -0.81780643                 -0.39099811    0.05248559
## 111    -1.1473699       1.92960211                  1.02975016   -1.16730616
## 112     0.8675235       0.84687954                  0.55616740   -1.66957335
## 113    -1.1473699       0.17017792                  0.55616740    2.49206909
## 114     0.8675235       1.11756018                  0.63509786   -0.16277177
## 115    -1.1473699       1.82132986                  1.02975016   -0.09101932
## 116     0.8675235      -0.91254465                 -0.54885903   -0.80854388
## 117    -1.1473699       0.30551825                 -0.54885903    1.20052489
## 118     0.8675235      -0.43885353                 -0.86458086   -0.01926686
## 119     0.8675235      -1.18322530                 -2.28532913    0.98526752
## 120     0.8675235       2.13261260                  1.18761108    1.91804945
## 121    -1.1473699       0.84687954                 -0.31206765   -0.44978160
## 122    -1.1473699      -1.00728288                  1.02975016    1.84629699
## 123    -1.1473699      -0.89901062                  0.47723694   -0.44978160
## 124     0.8675235      -1.18322530                 -0.86458086   -1.38256352
## 125     0.8675235      -0.50652369                 -0.54885903   -1.31081107
## 126     0.8675235      -0.64186401                 -1.73281592   -0.30627669
## 127    -1.1473699       0.71153921                  0.08258465   -1.16730616
## 128    -1.1473699      -1.14262320                  0.24044557    1.70279208
## 129    -1.1473699      -0.53359175                  0.24044557   -0.16277177
## 130     0.8675235      -0.61479595                 -0.72250604   -0.44978160
## 131    -1.1473699       1.79426179                  1.34547199    1.98980190
## 132    -1.1473699       0.64386905                 -0.54885903    0.98526752
## 133     0.8675235       1.04989002                  0.24044557   -0.52153405
## 134    -1.1473699      -1.12908917                  0.95081970    1.84629699
## 135     0.8675235       0.48146067                 -0.54885903    1.70279208
## 136     0.8675235      -0.84487449                  1.50333291   -0.09101932
## 137    -1.1473699       1.79426179                  1.39283027    0.19599050
## 138     0.8675235       1.23936647                  1.10868062    1.12877243
## 139     0.8675235       0.71153921                  0.24044557    0.41124787
## 140     0.8675235       0.44085857                 -0.54885903    1.55928717
## 141    -1.1473699      -0.64186401                  0.39830648   -0.09101932
## 142     0.8675235       0.17017792                 -0.39099811   -0.44978160
## 143     0.8675235       1.59125131                  1.42440245    1.34402980
## 144    -1.1473699      -0.37118337                 -1.33816362    2.77907892
## 145    -1.1473699       0.71153921                  0.85610315   -1.16730616
## 146    -1.1473699       1.59125131                  1.02975016   -0.23452423
## 147    -1.1473699       1.57771728                  0.93503361   -0.59328651
## 148     0.8675235      -1.11555514                  0.55616740   -1.88483072
## 149    -1.1473699      -0.84487449                  0.95081970   -1.16730616
## 150     0.8675235      -0.77720433                 -0.54885903    0.77001015
## 151    -1.1473699      -0.88547659                  0.08258465   -0.09101932
## 152     0.8675235      -1.18322530                 -0.54885903   -0.66503897
## 153    -1.1473699       0.64386905                 -2.12746821    0.12423805
## 154    -1.1473699       0.84687954                 -0.23313719   -0.73679142
## 155     0.8675235       0.75214131                  0.19308729    1.12877243
## 156    -1.1473699       1.79426179                  1.02975016   -0.88029633
## 157     0.8675235       0.50852873                 -0.54885903    0.77001015
## 158     0.8675235      -1.04788498                 -0.54885903   -0.80854388
## 159     0.8675235       0.84687954                  0.95081970    1.77454453
## 160     0.8675235      -0.50652369                 -1.33816362    0.05248559
## 161    -1.1473699       2.26795292                  2.40314015    0.98526752
## 162     0.8675235      -0.64186401                 -0.46992857   -1.23905861
## 163    -1.1473699      -0.92607869                 -1.02244178    0.84176261
## 164     0.8675235      -0.77720433                 -0.23313719   -0.16277177
## 165    -1.1473699      -0.87194256                 -0.07527627   -1.88483072
## 166     0.8675235       0.64386905                 -0.07527627    1.20052489
## 167     0.8675235       0.26491615                 -0.75407822   -0.95204879
## 168     0.8675235      -0.57419385                 -1.65388546   -0.44978160
## 169    -1.1473699       0.77920937                 -0.31206765    0.84176261
## 170    -1.1473699      -0.95314675                  0.31937602    0.62650524
## 171     0.8675235      -1.06141901                  0.39830648   -1.52606844
## 172    -1.1473699       1.00928792                  0.42987867    0.91351506
## 173     0.8675235      -0.30351320                  0.55616740   -1.52606844
## 174     0.8675235      -0.91254465                 -0.31206765   -0.73679142
## 175    -1.1473699      -1.12908917                  0.55616740    0.62650524
## 176    -1.1473699      -0.50652369                 -0.72250604    0.19599050
## 177     0.8675235       1.18523034                  1.02975016   -0.09101932
## 178     0.8675235       0.03483760                 -1.18030270   -0.88029633
## 179     0.8675235      -0.95314675                  0.47723694    0.62650524
## 180     0.8675235       1.11756018                  1.02975016   -0.23452423
## 181     0.8675235      -0.37118337                 -0.70671995    0.41124787
## 182     0.8675235       0.17017792                 -0.65936167    0.26774296
## 183     0.8675235      -0.85840853                  0.24044557   -1.16730616
## 184     0.8675235      -0.65539804                 -0.39099811   -1.95658317
## 185    -1.1473699      -0.84487449                  0.63509786   -1.88483072
## 186    -1.1473699      -0.57419385                  0.69824223   -0.09101932
## 187     0.8675235      -0.60126191                  2.45049842    0.48300033
## 188    -1.1473699       0.71153921                 -0.54885903    1.20052489
## 189     0.8675235      -0.37118337                 -0.70671995   -1.45431598
## 190     0.8675235       0.27845018                 -0.54885903    0.19599050
## 191     0.8675235       2.45742937                  1.96112958   -0.30627669
## 192    -1.1473699      -0.50652369                 -1.33816362    1.70279208
## 193    -1.1473699       0.84687954                  0.35094821   -1.52606844
## 194     0.8675235       0.44085857                  1.45597464    0.26774296
## 195    -1.1473699       2.56570163                  2.60835934   -0.16277177
## 196     0.8675235       0.84687954                  0.08258465    1.27227734
## 197    -1.1473699       0.57619889                 -0.54885903    0.33949542
## 198    -1.1473699      -0.50652369                 -0.45414248    0.62650524
## 199     0.8675235       1.38824083                  0.68245614   -1.16730616
## 200     0.8675235       0.84687954                 -0.23313719   -0.73679142
## 201     0.8675235      -1.15615724                  0.24044557    0.41124787
## 202    -1.1473699       0.57619889                 -0.54885903   -1.23905861
## 203    -1.1473699      -0.80427240                  0.39830648    1.48753471
## 204     0.8675235      -0.70953417                 -1.33816362   -0.44978160
## 205     0.8675235      -0.84487449                 -2.12746821    0.98526752
## 206    -1.1473699       1.82132986                  0.90346142    1.63103962
## 207    -1.1473699       0.84687954                  1.26654154    0.26774296
## 208     0.8675235      -0.50652369                 -0.24892328    0.33949542
## 209     0.8675235      -0.91254465                 -0.23313719   -2.24359299
## 210    -1.1473699       1.23936647                  0.85610315    1.34402980
## 211     0.8675235       0.03483760                 -0.54885903    1.70279208
## 212    -1.1473699      -0.80427240                 -0.39099811   -1.16730616
## 213     0.8675235       0.30551825                 -0.39099811   -0.80854388
## 214     0.8675235       1.21229841                  0.96660579   -0.01926686
## 215     0.8675235      -0.64186401                 -1.41709408   -1.16730616
## 216     0.8675235      -0.57419385                 -0.62778949   -1.02380125
##              Usia Berat_Badan Diabetes_Melitus
## 1   -0.4973899528 -0.91565674                1
## 2    0.2478324505  2.68974168                1
## 3    1.7382772572  0.93854816                2
## 4   -1.2426123562 -0.09156567                1
## 5    0.6204436522  0.11445709                2
## 6    0.4962399183  0.01144571                1
## 7    1.8624809911  0.01144571                2
## 8   -0.1247787512  0.62951401                2
## 9   -2.6088534290 -0.60662259                2
## 10  -0.9942048884  1.76263923                1
## 11  -0.7457974206  0.01144571                2
## 12  -0.7457974206  1.14457093                1
## 13   0.3720361844  0.01144571                1
## 14  -1.1184086223  1.96866199                2
## 15   1.2414623216 -1.32770227                2
## 16  -0.0005750173  1.35059369                2
## 17   0.3720361844 -0.29758844                2
## 18  -0.6215936867  0.01144571                1
## 19  -2.1120384934 -1.01866812                2
## 20  -1.2426123562 -0.09156567                2
## 21   1.7382772572 -0.40059982                2
## 22   1.1172585877  1.96866199                2
## 23   0.8688511199 -0.09156567                2
## 24  -1.2426123562 -1.12167951                2
## 25  -0.8700011545 -1.01866812                1
## 26  -0.8700011545  0.62951401                1
## 27   0.4962399183 -0.40059982                1
## 28   0.8688511199 -0.50361121                2
## 29   0.3720361844 -0.91565674                2
## 30  -0.7457974206  2.58673029                2
## 31  -1.3668160901  1.04155954                2
## 32  -0.9942048884 -1.22469089                1
## 33  -0.9942048884  0.83553678                1
## 34  -0.4973899528  1.45360508                2
## 35   0.7446473861  0.01144571                1
## 36  -0.7457974206  0.11445709                1
## 37   1.1172585877 -1.32770227                2
## 38  -0.0005750173  0.11445709                2
## 39  -0.3731862190 -0.81264536                1
## 40  -0.6215936867 -0.81264536                1
## 41  -0.2489824851  1.65962784                2
## 42  -0.3731862190 -0.91565674                1
## 43  -1.7394272918  0.11445709                1
## 44  -1.3668160901 -0.91565674                1
## 45   1.9866847250 -0.40059982                1
## 46  -0.1247787512 -0.60662259                1
## 47  -0.0005750173 -1.01866812                1
## 48  -0.8700011545 -0.19457706                2
## 49   1.6140735233 -0.19457706                2
## 50   0.3720361844  0.93854816                2
## 51  -0.1247787512  0.01144571                2
## 52  -0.7457974206 -1.01866812                1
## 53   1.7382772572  0.83553678                2
## 54   0.6204436522 -1.01866812                1
## 55  -0.1247787512 -0.09156567                1
## 56   0.8688511199  1.04155954                2
## 57   1.6140735233 -0.60662259                2
## 58   0.6204436522  0.52650263                2
## 59  -0.0005750173 -0.81264536                1
## 60   0.2478324505 -0.60662259                2
## 61  -0.1247787512 -1.01866812                2
## 62  -0.4973899528  1.76263923                1
## 63   0.2478324505 -0.50361121                2
## 64  -0.8700011545 -0.91565674                1
## 65  -0.0005750173 -0.70963397                1
## 66  -0.0005750173  0.52650263                2
## 67  -1.6152235579 -0.50361121                1
## 68   0.2478324505 -0.70963397                1
## 69  -0.1247787512  0.32047986                2
## 70  -0.0005750173  0.21746848                2
## 71   0.1236287166 -0.81264536                1
## 72  -0.2489824851  1.14457093                2
## 73   0.8688511199 -1.12167951                2
## 74   0.6204436522  0.32047986                1
## 75  -1.1184086223 -1.43071366                1
## 76  -0.4973899528  0.62951401                1
## 77  -0.0005750173  0.11445709                2
## 78   1.1172585877 -1.01866812                2
## 79   0.8688511199  0.93854816                2
## 80  -1.3668160901 -1.22469089                1
## 81  -0.8700011545 -0.91565674                1
## 82  -0.2489824851  3.10178721                2
## 83   0.3720361844 -1.22469089                1
## 84  -0.0005750173 -0.40059982                1
## 85  -0.2489824851  1.14457093                2
## 86   1.3656660555 -0.40059982                2
## 87   2.1108884589  1.14457093                2
## 88   0.4962399183 -0.40059982                2
## 89   0.3720361844  0.52650263                2
## 90  -0.3731862190  1.76263923                2
## 91   1.8624809911 -0.70963397                1
## 92   0.3720361844  0.83553678                2
## 93   0.1236287166  0.73252539                1
## 94  -1.2426123562  1.35059369                2
## 95   1.7382772572 -0.40059982                2
## 96  -0.1247787512  1.04155954                1
## 97   1.6140735233 -1.01866812                2
## 98  -0.8700011545 -1.01866812                1
## 99   0.1236287166 -0.81264536                1
## 100  1.7382772572 -1.12167951                2
## 101 -1.7394272918 -0.60662259                2
## 102 -0.6215936867 -0.91565674                2
## 103  0.2478324505  0.01144571                2
## 104  0.4962399183  0.21746848                2
## 105 -0.8700011545 -0.50361121                2
## 106  1.2414623216  0.42349124                2
## 107  0.3720361844  1.04155954                2
## 108 -1.2426123562  0.21746848                1
## 109  0.1236287166  0.62951401                1
## 110 -0.0005750173  1.04155954                1
## 111  0.8688511199 -0.70963397                2
## 112  1.6140735233  0.32047986                2
## 113  0.4962399183 -1.01866812                1
## 114  1.3656660555  0.01144571                2
## 115  0.6204436522  1.04155954                2
## 116 -0.7457974206 -1.12167951                1
## 117 -1.1184086223 -0.29758844                2
## 118  0.4962399183  0.21746848                2
## 119 -0.9942048884  0.42349124                2
## 120  0.8688511199  0.42349124                2
## 121 -1.2426123562 -1.01866812                2
## 122 -0.9942048884 -0.91565674                1
## 123 -0.7457974206 -0.19457706                1
## 124 -1.2426123562  0.42349124                2
## 125  0.2478324505  0.62951401                2
## 126 -0.4973899528  1.76263923                2
## 127 -0.0005750173  0.52650263                2
## 128 -0.1247787512 -0.60662259                1
## 129  1.7382772572  0.21746848                1
## 130  0.4962399183  1.86565061                1
## 131  1.1172585877 -0.70963397                2
## 132 -1.6152235579  1.14457093                2
## 133  0.4962399183  0.62951401                2
## 134 -1.7394272918 -1.12167951                1
## 135  1.2414623216  0.01144571                2
## 136  0.6204436522 -1.12167951                1
## 137  0.8688511199 -0.09156567                2
## 138 -0.3731862190 -0.91565674                2
## 139 -0.9942048884  1.04155954                2
## 140 -1.1184086223  0.62951401                2
## 141  0.3720361844  0.01144571                1
## 142  0.6204436522 -0.40059982                2
## 143  0.1236287166 -1.01866812                2
## 144  0.8688511199  1.55661646                2
## 145  0.7446473861  0.11445709                2
## 146  1.1172585877 -0.09156567                2
## 147  0.3720361844  1.04155954                2
## 148 -1.9878347595 -0.60662259                1
## 149 -1.6152235579 -1.01866812                1
## 150 -1.2426123562 -0.91565674                1
## 151 -2.1120384934 -0.91565674                1
## 152 -0.4973899528  0.01144571                1
## 153  0.2478324505 -0.91565674                2
## 154  0.4962399183 -0.81264536                2
## 155 -0.2489824851  0.21746848                2
## 156  1.6140735233 -1.22469089                2
## 157  0.6204436522  0.83553678                2
## 158 -0.0005750173 -1.01866812                1
## 159  0.4962399183 -1.22469089                2
## 160 -1.3668160901 -0.19457706                2
## 161  1.7382772572 -1.22469089                2
## 162 -1.1184086223  0.52650263                1
## 163 -0.0005750173  0.11445709                1
## 164  0.3720361844 -0.40059982                1
## 165 -0.3731862190 -0.91565674                1
## 166 -0.6215936867  1.24758231                2
## 167 -0.0005750173 -0.60662259                2
## 168 -0.1247787512  0.83553678                2
## 169 -0.9942048884  1.04155954                2
## 170  0.4962399183  0.11445709                1
## 171 -0.3731862190 -0.50361121                1
## 172 -0.2489824851 -0.29758844                2
## 173  0.3720361844 -1.43071366                1
## 174 -0.7457974206  2.17468476                1
## 175 -0.4973899528 -0.40059982                1
## 176  2.2350921927 -0.29758844                2
## 177  1.7382772572  0.73252539                2
## 178 -1.1184086223  0.93854816                2
## 179 -1.6152235579 -1.12167951                1
## 180  1.3656660555 -0.81264536                2
## 181  1.7382772572 -0.40059982                2
## 182 -0.6215936867 -0.40059982                2
## 183 -0.4973899528 -0.29758844                1
## 184 -0.7457974206  1.14457093                1
## 185 -1.9878347595 -0.50361121                1
## 186 -0.9942048884  0.62951401                1
## 187 -0.7457974206 -1.94577057                1
## 188 -0.8700011545  1.14457093                2
## 189  0.3720361844 -0.91565674                2
## 190 -0.7457974206  2.58673029                2
## 191  1.9866847250 -1.43071366                2
## 192 -0.3731862190  0.21746848                2
## 193  0.4962399183  1.24758231                2
## 194  1.3656660555 -1.43071366                1
## 195  1.2414623216 -1.01866812                2
## 196 -0.6215936867 -0.91565674                2
## 197 -0.4973899528  1.14457093                2
## 198  1.4898697894  0.01144571                1
## 199 -0.9942048884  0.83553678                2
## 200  1.3656660555  0.83553678                2
## 201  0.4962399183 -1.94577057                1
## 202 -1.6152235579 -1.12167951                2
## 203 -0.2489824851 -0.60662259                1
## 204  0.1236287166 -0.09156567                2
## 205  0.4962399183 -0.40059982                2
## 206  0.7446473861 -0.60662259                2
## 207  0.3720361844  3.41082136                2
## 208  0.3720361844  0.01144571                1
## 209 -1.7394272918 -1.43071366                1
## 210  1.6140735233  0.62951401                2
## 211 -0.2489824851  2.17468476                2
## 212 -0.8700011545 -0.81264536                1
## 213  1.1172585877  2.17468476                2
## 214 -0.4973899528 -0.60662259                2
## 215  0.6204436522  0.52650263                2
## 216 -0.6215936867 -0.40059982                1
# Mengimpor pustaka yang diperlukan
library(ICSNP)
## Loading required package: mvtnorm
## Loading required package: ICS
# Uji Hotelling's T-squared untuk vektor nilai rata-rata
hotelling_test <- function(data, group) {
  # Memisahkan data berdasarkan kelompok
  group1 <- data[group == levels(group)[1], ]
  group2 <- data[group == levels(group)[2], ]
  
  # Menghitung uji Hotelling's T-squared
  result <- HotellingsT2(group1, group2)
  
  return(result)
}

# Melakukan uji Hotelling's T-squared pada data
hotelling_results <- hotelling_test(databaru[, 1:6], as.factor(databaru$Diabetes_Melitus))
print(hotelling_results)
## 
##  Hotelling's two sample T2-test
## 
## data:  group1 and group2
## T.2 = 94.435, df1 = 6, df2 = 208, p-value < 2.2e-16
## alternative hypothesis: true location difference is not equal to c(0,0,0,0,0,0)
# Fungsi untuk Menghitung Jarak Mahalanobis
mahalanobis_distance <- function(data) {
  means <- colMeans(data)
  cov_matrix <- cov(data)
  inv_cov_matrix <- solve(cov_matrix)
  
  distances <- apply(data, 1, function(x) {
    diff <- x - means
    dist <- t(diff) %*% inv_cov_matrix %*% diff
    return(as.numeric(dist))
  })
  
  return(distances)
}

# Menghitung Jarak Mahalanobis
mahalanobis_distances <- mahalanobis_distance(databaru[, 1:6])

# Mengurutkan Nilai Jarak Mahalanobis
sorted_distances <- sort(mahalanobis_distances)

# Menghitung Nilai Chi-Square Quantiles
chi_square_quantiles <- qchisq((1:length(sorted_distances) - 0.5) / length(sorted_distances), df = 6)

# Membuat Plot Pasangan
plot(chi_square_quantiles, sorted_distances, xlab = "Chi-Square Quantiles", ylab = "Mahalanobis Distances",
     main = "Uji Distribusi Normal Ganda")
abline(0, 1, col = "red")

# Menghitung Proporsi yang Lebih dari Nilai Chi-Square
alpha <- 0.05
cutoff <- qchisq(1 - alpha, df = 6)
prop_greater_than_cutoff <- mean(sorted_distances > cutoff)

# Menentukan Hasil Uji
if (prop_greater_than_cutoff <= 0.5) {
  print("Terima H0: Data berdistribusi normal ganda")
} else {
  print("Tolak H0: Data tidak berdistribusi normal ganda")
}
## [1] "Terima H0: Data berdistribusi normal ganda"
# Menampilkan Proporsi
print(paste("Proporsi yang lebih besar dari cutoff:", prop_greater_than_cutoff))
## [1] "Proporsi yang lebih besar dari cutoff: 0.027906976744186"
# Menghitung nilai Chi-square untuk uji goodness-of-fit
observed <- table(databaru$Diabetes_Melitus)
expected <- rep(sum(observed) / length(observed), length(observed))

chi_square_value <- sum((observed - expected)^2 / expected)
p_value <- 1 - pchisq(chi_square_value, df = length(observed) - 1)

# Menampilkan nilai Chi-square dan p-value
print(paste("Chi-square value:", chi_square_value))
## [1] "Chi-square value: 7.81860465116279"
print(paste("P-value:", p_value))
## [1] "P-value: 0.00517111046832897"
# Kesimpulan berdasarkan p-value
if (p_value < 0.05) {
  print("Tolak H0: Data tidak sesuai dengan distribusi yang diharapkan")
} else {
  print("Terima H0: Data sesuai dengan distribusi yang diharapkan")
}
## [1] "Tolak H0: Data tidak sesuai dengan distribusi yang diharapkan"
# Fungsi untuk melakukan uji kestabilan
stability_test <- function(data, dependent_var, k_values) {
  results <- data.frame(k = integer(), Experiment = integer(), QPress = numeric(), Status = character())
  
  for (k in k_values) {
    folds <- createFolds(data[[dependent_var]], k = k)
    for (i in 1:k) {
      train_indices <- folds[[i]]
      test_indices <- setdiff(seq_len(nrow(data)), train_indices)
      
      train_data <- data[train_indices, ]
      test_data <- data[test_indices, ]
      
      model_lda <- lda(as.formula(paste(dependent_var, "~ .")), data = train_data)
      predictions <- predict(model_lda, test_data)$class
      
      conf_matrix <- table(test_data[[dependent_var]], predictions)
      n <- sum(conf_matrix)
      press_q <- (n - sum(diag(conf_matrix)))^2 / n
      
      results <- rbind(results, data.frame(
        k = k,
        Experiment = i,
        QPress = press_q,
        Status = ifelse(press_q < qchisq(0.95, df = 1), "Konsisten", "Tidak Konsisten")
      ))
    }
  }
  
  return(results)
}

# Melakukan uji kestabilan dengan k = 2, 3, dan 4
k_values <- c(2, 3, 4)
stability_results <- stability_test(databaru, "Diabetes_Melitus", k_values)

# Menampilkan hasil uji kestabilan
print(stability_results)
##   k Experiment    QPress    Status
## 1 2          1 0.3364486 Konsisten
## 2 2          2 0.1481481 Konsisten
## 3 3          1 0.0625000 Konsisten
## 4 3          2 0.5664336 Konsisten
## 5 3          3 0.6993007 Konsisten
## 6 4          1 0.5000000 Konsisten
## 7 4          2 2.4844720 Konsisten
## 8 4          3 0.6211180 Konsisten
## 9 4          4 1.0496894 Konsisten
# Fungsi untuk mendeteksi pencilan peubah ganda
detect_outliers <- function(data, dependent_var, alpha = 0.05) {
  independent_vars <- setdiff(names(data), dependent_var)
  cov_matrix <- cov(data[, independent_vars])
  inv_cov_matrix <- solve(cov_matrix)
  mean_vector <- colMeans(data[, independent_vars])
  
  mahalanobis_distances <- apply(data[, independent_vars], 1, function(row) {
    diff <- row - mean_vector
    dist <- t(diff) %*% inv_cov_matrix %*% diff
    return(as.numeric(dist))
  })
  
  cutoff <- qchisq(1 - alpha, df = length(independent_vars))
  outliers <- which(mahalanobis_distances > cutoff)
  
  result <- data.frame(
    Observation = 1:nrow(data),
    MahalanobisDistance = mahalanobis_distances,
    IsOutlier = mahalanobis_distances > cutoff
  )
  
  return(list(outliers = outliers, result = result))
}

# Melakukan deteksi pencilan peubah ganda
outlier_detection <- detect_outliers(databaru, "Diabetes_Melitus")

# Menampilkan hasil deteksi pencilan peubah ganda
print(outlier_detection$result)
##     Observation MahalanobisDistance IsOutlier
## 1             1            3.320235     FALSE
## 2             2           10.950204     FALSE
## 3             3            7.556543     FALSE
## 4             4            3.991435     FALSE
## 5             5            2.827670     FALSE
## 6             6            6.946771     FALSE
## 7             7            7.436734     FALSE
## 8             8            5.805944     FALSE
## 9             9           13.796821      TRUE
## 10           10           11.131270     FALSE
## 11           11            2.718866     FALSE
## 12           12            6.767070     FALSE
## 13           13            5.230380     FALSE
## 14           14           10.518488     FALSE
## 15           15            6.430366     FALSE
## 16           16            2.755922     FALSE
## 17           17            2.419332     FALSE
## 18           18            4.096973     FALSE
## 19           19           10.928576     FALSE
## 20           20            9.540569     FALSE
## 21           21            5.019708     FALSE
## 22           22            9.688322     FALSE
## 23           23            3.808278     FALSE
## 24           24            5.038900     FALSE
## 25           25            3.954709     FALSE
## 26           26            3.143855     FALSE
## 27           27            2.542652     FALSE
## 28           28           10.807446     FALSE
## 29           29            3.956357     FALSE
## 30           30           14.942425      TRUE
## 31           31            5.494261     FALSE
## 32           32            8.816512     FALSE
## 33           33            4.580373     FALSE
## 34           34            5.102657     FALSE
## 35           35            2.370728     FALSE
## 36           36            3.642734     FALSE
## 37           37           10.414821     FALSE
## 38           38            3.701566     FALSE
## 39           39            3.073810     FALSE
## 40           40            3.794058     FALSE
## 41           41            7.397835     FALSE
## 42           42            7.956641     FALSE
## 43           43           11.291783     FALSE
## 44           44            4.548099     FALSE
## 45           45            8.561197     FALSE
## 46           46            3.013717     FALSE
## 47           47            5.580381     FALSE
## 48           48            3.972582     FALSE
## 49           49            6.084458     FALSE
## 50           50            3.014039     FALSE
## 51           51            4.217760     FALSE
## 52           52            4.340191     FALSE
## 53           53            6.284034     FALSE
## 54           54            5.705849     FALSE
## 55           55            3.279025     FALSE
## 56           56            6.818571     FALSE
## 57           57            4.926481     FALSE
## 58           58            3.554071     FALSE
## 59           59            5.861380     FALSE
## 60           60            6.911335     FALSE
## 61           61            4.852535     FALSE
## 62           62            7.181976     FALSE
## 63           63            2.161240     FALSE
## 64           64            3.007729     FALSE
## 65           65            5.690391     FALSE
## 66           66            8.872803     FALSE
## 67           67            4.533602     FALSE
## 68           68            2.869503     FALSE
## 69           69            2.498039     FALSE
## 70           70            2.318645     FALSE
## 71           71            6.335633     FALSE
## 72           72            3.052898     FALSE
## 73           73            6.523525     FALSE
## 74           74            3.316083     FALSE
## 75           75            6.787016     FALSE
## 76           76            8.597070     FALSE
## 77           77            2.691437     FALSE
## 78           78            9.761324     FALSE
## 79           79           11.843140     FALSE
## 80           80            5.262061     FALSE
## 81           81            3.053735     FALSE
## 82           82           12.817097      TRUE
## 83           83            4.058725     FALSE
## 84           84            4.108120     FALSE
## 85           85            2.239734     FALSE
## 86           86            5.619656     FALSE
## 87           87            7.191361     FALSE
## 88           88            6.642488     FALSE
## 89           89           10.581560     FALSE
## 90           90            4.250780     FALSE
## 91           91            6.756259     FALSE
## 92           92            8.403876     FALSE
## 93           93            3.877679     FALSE
## 94           94            7.743855     FALSE
## 95           95            4.755166     FALSE
## 96           96            5.078869     FALSE
## 97           97            6.084175     FALSE
## 98           98            4.530411     FALSE
## 99           99            3.824412     FALSE
## 100         100            5.969575     FALSE
## 101         101            8.944533     FALSE
## 102         102            3.973888     FALSE
## 103         103            2.401012     FALSE
## 104         104            2.441905     FALSE
## 105         105            2.906249     FALSE
## 106         106           11.562074     FALSE
## 107         107            9.919982     FALSE
## 108         108            9.278897     FALSE
## 109         109            3.190429     FALSE
## 110         110            2.650346     FALSE
## 111         111            7.024227     FALSE
## 112         112            7.026265     FALSE
## 113         113            8.290501     FALSE
## 114         114            3.326733     FALSE
## 115         115            6.094169     FALSE
## 116         116            3.795444     FALSE
## 117         117            5.649845     FALSE
## 118         118            1.969925     FALSE
## 119         119            7.442717     FALSE
## 120         120            9.111281     FALSE
## 121         121            7.660619     FALSE
## 122         122            9.989517     FALSE
## 123         123            3.948443     FALSE
## 124         124            4.158312     FALSE
## 125         125            3.133046     FALSE
## 126         126            5.259081     FALSE
## 127         127            3.844059     FALSE
## 128         128            7.084001     FALSE
## 129         129            7.237239     FALSE
## 130         130            5.416407     FALSE
## 131         131            7.821826     FALSE
## 132         132            8.857921     FALSE
## 133         133            2.794580     FALSE
## 134         134           12.179030     FALSE
## 135         135            6.039407     FALSE
## 136         136            7.562733     FALSE
## 137         137            4.497013     FALSE
## 138         138            5.984687     FALSE
## 139         139            4.752249     FALSE
## 140         140            6.609871     FALSE
## 141         141            3.333422     FALSE
## 142         142            2.233003     FALSE
## 143         143            7.146752     FALSE
## 144         144           13.914206      TRUE
## 145         145            4.197360     FALSE
## 146         146            4.017704     FALSE
## 147         147            5.971855     FALSE
## 148         148            9.106015     FALSE
## 149         149            7.915925     FALSE
## 150         150            4.479002     FALSE
## 151         151            6.796159     FALSE
## 152         152            2.184582     FALSE
## 153         153           13.857832      TRUE
## 154         154            4.429790     FALSE
## 155         155            3.214434     FALSE
## 156         156            7.806530     FALSE
## 157         157            2.902586     FALSE
## 158         158            3.787183     FALSE
## 159         159            6.538310     FALSE
## 160         160            4.628854     FALSE
## 161         161            9.635759     FALSE
## 162         162            3.324660     FALSE
## 163         163            3.894551     FALSE
## 164         164            2.014087     FALSE
## 165         165            6.411924     FALSE
## 166         166            5.252562     FALSE
## 167         167            4.108940     FALSE
## 168         168            3.604446     FALSE
## 169         169            6.068543     FALSE
## 170         170            5.083957     FALSE
## 171         171            4.845874     FALSE
## 172         172            3.393456     FALSE
## 173         173            5.766107     FALSE
## 174         174            7.870290     FALSE
## 175         175            5.098004     FALSE
## 176         176            9.642474     FALSE
## 177         177            5.475982     FALSE
## 178         178            4.885705     FALSE
## 179         179            6.064158     FALSE
## 180         180            4.262883     FALSE
## 181         181            6.226945     FALSE
## 182         182            2.937573     FALSE
## 183         183            3.067033     FALSE
## 184         184            6.116222     FALSE
## 185         185           10.035219     FALSE
## 186         186            5.482198     FALSE
## 187         187           12.930018      TRUE
## 188         188            6.709485     FALSE
## 189         189            5.267104     FALSE
## 190         190            8.596937     FALSE
## 191         191           11.413515     FALSE
## 192         192            6.420967     FALSE
## 193         193            6.896334     FALSE
## 194         194            5.989211     FALSE
## 195         195           10.045910     FALSE
## 196         196            6.251218     FALSE
## 197         197            4.229160     FALSE
## 198         198            5.667414     FALSE
## 199         199            8.152712     FALSE
## 200         200            4.503142     FALSE
## 201         201            7.530825     FALSE
## 202         202           10.321638     FALSE
## 203         203            5.403016     FALSE
## 204         204            3.106391     FALSE
## 205         205            8.826985     FALSE
## 206         206            6.544879     FALSE
## 208         207            1.466640     FALSE
## 209         208           10.198502     FALSE
## 210         209            6.136077     FALSE
## 211         210            8.648165     FALSE
## 212         211            4.317444     FALSE
## 213         212            7.657243     FALSE
## 214         213            4.350592     FALSE
## 215         214            4.895985     FALSE
## 216         215            2.533024     FALSE
# Menampilkan pengamatan yang merupakan outliers
outlier_indices <- outlier_detection$outliers
print(databaru[outlier_indices, ])
##     Jenis_Kelamin Gula_Darah_Puasa Gula_Darah_Jam_Pos_Prandial Tekanan_Darah
## 9      -1.1473699        0.8468795                  -0.2331372     0.1959905
## 30      0.8675235        1.3882408                   0.8718892    -1.1673062
## 82      0.8675235       -0.9125447                  -2.2853291     0.6265052
## 144    -1.1473699       -0.3711834                  -1.3381636     2.7790789
## 153    -1.1473699        0.6438691                  -2.1274682     0.1242380
## 187     0.8675235       -0.6012619                   2.4504984     0.4830003
##           Usia Berat_Badan Diabetes_Melitus
## 9   -2.6088534  -0.6066226                2
## 30  -0.7457974   2.5867303                2
## 82  -0.2489825   3.1017872                2
## 144  0.8688511   1.5566165                2
## 153  0.2478325  -0.9156567                2
## 187 -0.7457974  -1.9457706                1
# Fungsi untuk menghitung Cpro dan Cmax
accuracy_test <- function(data, dependent_var) {
  # Menghitung proporsi sampel pada setiap kelompok
  group_counts <- table(data[[dependent_var]])
  p <- group_counts[1] / sum(group_counts)
  q <- 1 - p
  
  # Menghitung nilai Cpro
  Cpro <- p^2 + q^2
  
  # Menghitung nilai Cmax
  n_max <- max(group_counts)
  N <- sum(group_counts)
  Cmax <- (n_max / N) * 100
  
  return(list(Cpro = Cpro, Cmax = Cmax))
}

# Melakukan uji keakuratan
accuracy_results <- accuracy_test(databaru, "Diabetes_Melitus")

# Menampilkan hasil uji keakuratan
print(accuracy_results)
## $Cpro
##         1 
## 0.5181828 
## 
## $Cmax
## [1] 59.53488
# Membandingkan dengan akurasi aktual dari model LDA
actual_accuracy <- mean_accuracy * 100  # Mengkonversi ke persen
Cpro <- accuracy_results$Cpro * 100  # Mengkonversi ke persen

cat("Akurasi Aktual:", actual_accuracy, "%\n")
## Akurasi Aktual: 89.51098 %
cat("Cpro:", Cpro, "%\n")
## Cpro: 51.81828 %
cat("Cmax:", accuracy_results$Cmax, "%\n")
## Cmax: 59.53488 %
# Menentukan hasil uji keakuratan berdasarkan Cpro
if (actual_accuracy > Cpro) {
  print("H0 ditolak: Klasifikasi akurat")
} else {
  print("H0 diterima: Klasifikasi tidak akurat")
}
## [1] "H0 ditolak: Klasifikasi akurat"