# Mebuat data frame dengan kolom kategori
data <- data.frame(
  Gender = c(0, 1, 0, 1, 1),
  Age = c(30.83, 58.67, 24.50, 27.83, 20.17),
  Debt = c(0.000, 4.460, 0.500, 1.540, 5.625),
  Married = c(1, 1, 1, 1, 1),
  BankCustomer = c(1, 1, 0, 1, 1),
  Industry = c("Industrials", "Materials", "Materials", "Industrials", "Industrials"),
  YearsEmployed = c(1.25, 3.04, 1.50, 3.75, 1.71),
  PriorDefault = c(1, 1, 0, 1, 0),
  Employed = c(1, 1, 0, 1, 0),
  CreditScore = c(1, 6, 0, 5, 0),
  DriverLicense = c(0, 0, 0, 1, 0),
  Citizen = c("ByBirth", "ByBirth", "ByBirth", "ByBirth", "ByOtherMeans"),
  ZipCode = c(202, 43, 280, 100, 120),
  Income = c(0, 560, 824, 3, 0),
  Approved = c(1, 1, 1, 1, 1)
)

# Memilih hanya kolom numerik
data_numeric <- data[, sapply(data, is.numeric)]

# Menghitung matriks kovarians
cov_matrix <- cov(data_numeric)

# Menghitung eigen value dan eigen vector
eigen_result <- eigen(cov_matrix)
eigen_values <- eigen_result$values
eigen_vectors <- eigen_result$vectors

# Hitung standar deviasi untuk setiap kolom
sd_values <- apply(data_numeric, 2, sd)

# Hapus kolom dengan standar deviasi nol
data_numeric <- data_numeric[, sd_values != 0]

# Menghitung matriks korelasi
cor_matrix <- cor(data_numeric)

# Menampilkan hasil
print("Eigen Values:")
## [1] "Eigen Values:"
print(eigen_values)
##  [1]  1.529993e+05  7.738641e+03  7.533480e+01  4.829109e+00  9.346965e-15
##  [6]  5.570814e-15  3.535152e-15  1.089908e-15  5.045945e-16  0.000000e+00
## [11] -5.147909e-17 -8.281943e-14 -1.231356e-12
print("Eigen Vectors:")
## [1] "Eigen Vectors:"
print(eigen_vectors)
##                [,1]          [,2]          [,3]          [,4]          [,5]
##  [1,] -4.632107e-04 -0.0052112392 -2.742659e-02  8.455471e-03  9.995744e-01
##  [2,]  1.289699e-02 -0.1315580552  9.768263e-01 -1.382182e-01  2.729173e-02
##  [3,] -8.188169e-04 -0.0196046486 -1.279263e-01 -6.236024e-01  1.662434e-03
##  [4,]  2.168404e-19  0.0000000000 -3.330669e-16 -1.558476e-14  1.249001e-16
##  [5,] -9.076584e-04 -0.0027845437  1.245692e-02 -2.163038e-02  5.098315e-04
##  [6,] -3.179487e-04 -0.0090247020 -1.826291e-02  3.253522e-01 -3.300478e-03
##  [7,] -4.517919e-04 -0.0026381795  4.503155e-02  1.134386e-01  2.620389e-04
##  [8,] -4.517919e-04 -0.0026381795  4.503155e-02  1.134386e-01  2.620389e-04
##  [9,] -3.496570e-05 -0.0271352527  8.398211e-02  6.547687e-01 -3.375897e-03
## [10,] -4.535473e-04 -0.0008273017 -1.321034e-02  1.762923e-01 -1.858262e-03
## [11,]  8.349394e-02  0.9873552051  1.279519e-01 -8.902261e-03  8.772309e-03
## [12,]  9.964236e-01 -0.0810589450 -2.343948e-02  2.316635e-03 -6.235820e-04
## [13,]  0.000000e+00  0.0000000000  0.000000e+00  0.000000e+00  0.000000e+00
##                [,6]         [,7]          [,8]          [,9] [,10]
##  [1,]  0.0000000000  0.000000000  0.0000000000  0.0000000000     0
##  [2,]  0.0013425514  0.009230988  0.0018796298  0.0007604077     0
##  [3,]  0.0065649090  0.021391182  0.0061059603  0.0025583714     0
##  [4,] -0.8870260473  0.332624245 -0.3022215863 -0.0259518181     0
##  [5,] -0.3770320865 -0.432719409  0.5747989721  0.5596586869     0
##  [6,] -0.1830339861 -0.475449644  0.0204837436 -0.3027446459     0
##  [7,]  0.0660983476 -0.451182039 -0.4739878288  0.1382331933     0
##  [8,] -0.0929828276 -0.359417605 -0.3370655532 -0.1579370105     0
##  [9,]  0.0497434746  0.340881986  0.2661949241 -0.0247224674     0
## [10,]  0.1483068171  0.162974088 -0.4106361025  0.7414726248     0
## [11,] -0.0010297392  0.003328462  0.0069340263 -0.0010798946     0
## [12,] -0.0002704843 -0.001208080 -0.0006155211  0.0008236463     0
## [13,]  0.0000000000  0.000000000  0.0000000000  0.0000000000     1
##               [,11]        [,12]        [,13]
##  [1,]  0.0000000000  0.000000000  0.000000000
##  [2,]  0.0007339675  0.087311045 -0.027793855
##  [3,] -0.0005291892  0.172497166 -0.751043992
##  [4,]  0.1010726239 -0.017186661 -0.004843796
##  [5,] -0.0495889305 -0.152031116 -0.028010842
##  [6,]  0.0594907296  0.724565629 -0.116437754
##  [7,]  0.6158792365 -0.340101621 -0.195992739
##  [8,] -0.7478553332 -0.335172734 -0.192572410
##  [9,]  0.0471443672 -0.171655731 -0.584502375
## [10,] -0.2072830381  0.395620146 -0.047973693
## [11,]  0.0012365449  0.014875501 -0.036693095
## [12,] -0.0002922733 -0.002274225  0.002536019
## [13,]  0.0000000000  0.000000000  0.000000000
print("Variance-Covariance Matrix:")
## [1] "Variance-Covariance Matrix:"
print(cov_matrix)
##                 Gender         Age        Debt Married BankCustomer
## Gender          0.3000    2.367500    1.087500       0      0.15000
## Age             2.3675  231.361400    9.345663       0      1.97500
## Debt            1.0875    9.345663    6.187675       0      0.48125
## Married         0.0000    0.000000    0.000000       0      0.00000
## BankCustomer    0.1500    1.975000    0.481250       0      0.20000
## YearsEmployed   0.4375    6.999375    0.605225       0      0.18750
## PriorDefault    0.0500    5.032500   -0.318750       0      0.15000
## Employed        0.0500    5.032500   -0.318750       0      0.15000
## CreditScore     0.9500   33.300000    1.340000       0      0.60000
## DriverLicense   0.1000   -1.142500   -0.221250       0      0.05000
## ZipCode       -46.0000 -831.032500 -161.461250       0    -32.75000
## Income        -67.3000 2046.972500 -112.313750       0   -136.65000
## Approved        0.0000    0.000000    0.000000       0      0.00000
##               YearsEmployed PriorDefault  Employed CreditScore DriverLicense
## Gender             0.437500      0.05000   0.05000        0.95       0.10000
## Age                6.999375      5.03250   5.03250       33.30      -1.14250
## Debt               0.605225     -0.31875  -0.31875        1.34      -0.22125
## Married            0.000000      0.00000   0.00000        0.00       0.00000
## BankCustomer       0.187500      0.15000   0.15000        0.60       0.05000
## YearsEmployed      1.182050      0.32250   0.32250        2.81       0.37500
## PriorDefault       0.322500      0.30000   0.30000        1.20       0.10000
## Employed           0.322500      0.30000   0.30000        1.20       0.10000
## CreditScore        2.810000      1.20000   1.20000        8.30       0.65000
## DriverLicense      0.375000      0.10000   0.10000        0.65       0.20000
## ZipCode          -73.207500    -25.50000 -25.50000     -207.00     -12.25000
## Income           -42.775000    -67.30000 -67.30000       11.55     -68.60000
## Approved           0.000000      0.00000   0.00000        0.00       0.00000
##                  ZipCode      Income Approved
## Gender          -46.0000    -67.3000        0
## Age            -831.0325   2046.9725        0
## Debt           -161.4613   -112.3137        0
## Married           0.0000      0.0000        0
## BankCustomer    -32.7500   -136.6500        0
## YearsEmployed   -73.2075    -42.7750        0
## PriorDefault    -25.5000    -67.3000        0
## Employed        -25.5000    -67.3000        0
## CreditScore    -207.0000     11.5500        0
## DriverLicense   -12.2500    -68.6000        0
## ZipCode        8612.0000  12109.2500        0
## Income        12109.2500 151957.8000        0
## Approved          0.0000      0.0000        0
print("Correlation Matrix:")
## [1] "Correlation Matrix:"
print(cor_matrix)
##                   Gender        Age       Debt BankCustomer YearsEmployed
## Gender         1.0000000  0.2841737  0.7981874    0.6123724     0.7346822
## Age            0.2841737  1.0000000  0.2470022    0.2903399     0.4232489
## Debt           0.7981874  0.2470022  1.0000000    0.4326055     0.2237872
## BankCustomer   0.6123724  0.2903399  0.4326055    1.0000000     0.3856278
## YearsEmployed  0.7346822  0.4232489  0.2237872    0.3856278     1.0000000
## PriorDefault   0.1666667  0.6040567 -0.2339515    0.6123724     0.5415657
## Employed       0.1666667  0.6040567 -0.2339515    0.6123724     0.5415657
## CreditScore    0.6020380  0.7599058  0.1869829    0.4656903     0.8971175
## DriverLicense  0.4082483 -0.1679561 -0.1988861    0.2500000     0.7712556
## ZipCode       -0.9049929 -0.5887359 -0.6994434   -0.7891223    -0.7255806
## Income        -0.3152049  0.3452272 -0.1158264   -0.7838503    -0.1009278
##               PriorDefault   Employed CreditScore DriverLicense    ZipCode
## Gender           0.1666667  0.1666667  0.60203804     0.4082483 -0.9049929
## Age              0.6040567  0.6040567  0.75990576    -0.1679561 -0.5887359
## Debt            -0.2339515 -0.2339515  0.18698295    -0.1988861 -0.6994434
## BankCustomer     0.6123724  0.6123724  0.46569032     0.2500000 -0.7891223
## YearsEmployed    0.5415657  0.5415657  0.89711754     0.7712556 -0.7255806
## PriorDefault     1.0000000  1.0000000  0.76046910     0.4082483 -0.5016809
## Employed         1.0000000  1.0000000  0.76046910     0.4082483 -0.5016809
## CreditScore      0.7604691  0.7604691  1.00000000     0.5044978 -0.7742466
## DriverLicense    0.4082483  0.4082483  0.50449784     1.0000000 -0.2951679
## ZipCode         -0.5016809 -0.5016809 -0.77424657    -0.2951679  1.0000000
## Income          -0.3152049 -0.3152049  0.01028446    -0.3935026  0.3347370
##                    Income
## Gender        -0.31520488
## Age            0.34522724
## Debt          -0.11582643
## BankCustomer  -0.78385032
## YearsEmployed -0.10092775
## PriorDefault  -0.31520488
## Employed      -0.31520488
## CreditScore    0.01028446
## DriverLicense -0.39350261
## ZipCode        0.33473701
## Income         1.00000000