Import Data

data_intro <- read.csv("C:/Users/Lenovo/Downloads/hcv+data/hcvdat0.csv",sep = ",")
str(data_intro)
## 'data.frame':    615 obs. of  14 variables:
##  $ X       : int  1 2 3 4 5 6 7 8 9 10 ...
##  $ Category: chr  "0=Blood Donor" "0=Blood Donor" "0=Blood Donor" "0=Blood Donor" ...
##  $ Age     : int  32 32 32 32 32 32 32 32 32 32 ...
##  $ Sex     : chr  "m" "m" "m" "m" ...
##  $ ALB     : num  38.5 38.5 46.9 43.2 39.2 41.6 46.3 42.2 50.9 42.4 ...
##  $ ALP     : num  52.5 70.3 74.7 52 74.1 43.3 41.3 41.9 65.5 86.3 ...
##  $ ALT     : num  7.7 18 36.2 30.6 32.6 18.5 17.5 35.8 23.2 20.3 ...
##  $ AST     : num  22.1 24.7 52.6 22.6 24.8 19.7 17.8 31.1 21.2 20 ...
##  $ BIL     : num  7.5 3.9 6.1 18.9 9.6 12.3 8.5 16.1 6.9 35.2 ...
##  $ CHE     : num  6.93 11.17 8.84 7.33 9.15 ...
##  $ CHOL    : num  3.23 4.8 5.2 4.74 4.32 6.05 4.79 4.6 4.1 4.45 ...
##  $ CREA    : num  106 74 86 80 76 111 70 109 83 81 ...
##  $ GGT     : num  12.1 15.6 33.2 33.8 29.9 91 16.9 21.5 13.7 15.9 ...
##  $ PROT    : num  69 76.5 79.3 75.7 68.7 74 74.5 67.1 71.3 69.9 ...

Cleaning Data

data_intro <- data_intro[, names(data_intro) != "X"]
data_numeric <- data_intro[, sapply(data_intro, is.numeric)]
str(data_numeric)
## 'data.frame':    615 obs. of  11 variables:
##  $ Age : int  32 32 32 32 32 32 32 32 32 32 ...
##  $ ALB : num  38.5 38.5 46.9 43.2 39.2 41.6 46.3 42.2 50.9 42.4 ...
##  $ ALP : num  52.5 70.3 74.7 52 74.1 43.3 41.3 41.9 65.5 86.3 ...
##  $ ALT : num  7.7 18 36.2 30.6 32.6 18.5 17.5 35.8 23.2 20.3 ...
##  $ AST : num  22.1 24.7 52.6 22.6 24.8 19.7 17.8 31.1 21.2 20 ...
##  $ BIL : num  7.5 3.9 6.1 18.9 9.6 12.3 8.5 16.1 6.9 35.2 ...
##  $ CHE : num  6.93 11.17 8.84 7.33 9.15 ...
##  $ CHOL: num  3.23 4.8 5.2 4.74 4.32 6.05 4.79 4.6 4.1 4.45 ...
##  $ CREA: num  106 74 86 80 76 111 70 109 83 81 ...
##  $ GGT : num  12.1 15.6 33.2 33.8 29.9 91 16.9 21.5 13.7 15.9 ...
##  $ PROT: num  69 76.5 79.3 75.7 68.7 74 74.5 67.1 71.3 69.9 ...

Correlation Matrix

cor_matrix <- cor(data_numeric, use = "complete.obs")
cor_matrix
##              Age          ALB         ALP         ALT         AST         BIL
## Age   1.00000000 -0.191093637  0.17771977 -0.04057647  0.07273886  0.03965486
## ALB  -0.19109364  1.000000000 -0.14611991  0.03949714 -0.17760895 -0.16959750
## ALP   0.17771977 -0.146119911  1.00000000  0.22160301  0.06702428  0.05837241
## ALT  -0.04057647  0.039497139  0.22160301  1.00000000  0.19865775 -0.10679662
## AST   0.07273886 -0.177608947  0.06702428  0.19865775  1.00000000  0.30957974
## BIL   0.03965486 -0.169597498  0.05837241 -0.10679662  0.30957974  1.00000000
## CHE  -0.07586328  0.360919403  0.02948169  0.22434447 -0.19727042 -0.32071323
## CHOL  0.12474161  0.210419878  0.12590008  0.14999727 -0.20121300 -0.18156956
## CREA -0.02514225  0.001433247  0.15390895 -0.03610554 -0.01794810  0.01990962
## GGT   0.14337927 -0.147598318  0.46130000  0.21970686  0.47777362  0.21056656
## PROT -0.15975998  0.570725680 -0.06308514  0.01678633  0.01740394 -0.05257491
##              CHE         CHOL         CREA          GGT        PROT
## Age  -0.07586328  0.124741615 -0.025142253  0.143379268 -0.15975998
## ALB   0.36091940  0.210419878  0.001433247 -0.147598318  0.57072568
## ALP   0.02948169  0.125900079  0.153908950  0.461299996 -0.06308514
## ALT   0.22434447  0.149997271 -0.036105541  0.219706857  0.01678633
## AST  -0.19727042 -0.201213004 -0.017948098  0.477773617  0.01740394
## BIL  -0.32071323 -0.181569556  0.019909617  0.210566559 -0.05257491
## CHE   1.00000000  0.428018276 -0.012119999 -0.095716131  0.30628754
## CHOL  0.42801828  1.000000000 -0.051464078  0.008822692  0.24504950
## CREA -0.01212000 -0.051464078  1.000000000  0.125353469 -0.03011070
## GGT  -0.09571613  0.008822692  0.125353469  1.000000000 -0.03712701
## PROT  0.30628754  0.245049503 -0.030110695 -0.037127008  1.00000000

Correlation matrix digunakan untuk melihat hubungan antar variabel numerik dalam data. Dari hasil ini, kita bisa tahu apakah dua variabel saling berhubungan atau tidak. Nilainya berkisar antara −1 sampai 1. Jika nilainya mendekati 1, artinya kedua variabel memiliki hubungan positif yang kuat. Jika mendekati −1, berarti hubungannya negatif. Sedangkan nilai mendekati 0 menunjukkan hubungan yang lemah atau hampir tidak ada. Correlation matrix membantu dapat memahami pola hubungan antar variabel dalam dataset.

Variance-Covariance Matrix

cov_matrix <- cov(data_numeric, use = "complete.obs")
cov_matrix
##             Age         ALB        ALP        ALT         AST        BIL
## Age   98.631388 -10.9348172  45.750544  -8.407388   23.742827   6.855155
## ALB  -10.934817  33.1982701 -21.823283   4.747912  -33.634186 -17.009455
## ALP   45.750544 -21.8232826 671.901949 119.841675   57.100968  26.337454
## ALT   -8.407388   4.7479116 119.841675 435.269784  136.220708 -38.783770
## AST   23.742827 -33.6341863  57.100968 136.220708 1080.231200 177.110426
## BIL    6.855155 -17.0094554  26.337454 -38.783770  177.110426 302.988734
## CHE   -1.650806   4.5564303   1.674411  10.255372  -14.206173 -12.231702
## CHOL   1.398606   1.3687395   3.684302   3.532962   -7.466047  -3.568064
## CREA -12.658841   0.4186596 202.254881 -38.188738  -29.906045  17.569457
## GGT   77.323769 -46.1804560 649.315069 248.909775  852.706557 199.031456
## PROT  -8.486697  17.5892871  -8.746677   1.873261    3.059630  -4.895025
##             CHE       CHOL         CREA          GGT       PROT
## Age   -1.650806  1.3986055  -12.6588412   77.3237685  -8.486697
## ALB    4.556430  1.3687395    0.4186596  -46.1804560  17.589287
## ALP    1.674411  3.6843023  202.2548814  649.3150694  -8.746677
## ALT   10.255372  3.5329616  -38.1887382  248.9097752   1.873261
## AST  -14.206173 -7.4660468  -29.9060449  852.7065571   3.059630
## BIL  -12.231702 -3.5680635   17.5694569  199.0314564  -4.895025
## CHE    4.800799  1.0587548   -1.3462991  -11.3883550   3.589626
## CHOL   1.058755  1.2745375   -2.9455248    0.5408745   1.479767
## CREA  -1.346299 -2.9455248 2570.1849279  345.0941704  -8.165186
## GGT  -11.388355  0.5408745  345.0941704 2948.7514092 -10.783808
## PROT   3.589626  1.4797666   -8.1651857  -10.7838076  28.610549

Variance–covariance matrix digunakan untuk mengetahui seberapa besar penyebaran data dan hubungan perubahan antar variabel. Nilai pada bagian diagonal menunjukkan varians, yaitu seberapa besar data pada satu variabel menyebar dari rata-ratanya. Sementara itu, nilai di luar diagonal menunjukkan kovarians, yaitu apakah dua variabel cenderung meningkat atau menurun secara bersamaan. Matriks ini penting karena menjadi dasar untuk analisis lanjutan seperti perhitungan eigen value dan eigen vector.

Eigen value dan eigen vector

eigen_result <- eigen(cov_matrix)

Eigen value dan eigen vector adalah hasil dari pengolahan data menggunakan variance–covariance matrix. Keduanya dipakai untuk melihat struktur utama dari data. Eigen value menunjukkan seberapa besar informasi yang bisa dijelaskan oleh suatu komponen, sedangkan eigen vector menunjukkan peran masing-masing variabel dalam membentuk komponen tersebut. Dengan melihat keduanya, dapat dilihat bagian data mana yang paling penting untuk dianalisis.

Eigen value

eigen_values <- eigen_result$values
eigen_values
##  [1] 3592.3628875 2477.4068784  843.8984053  489.7454024  382.8104539
##  [6]  232.9586647   95.1113858   44.7180378   12.3733533    3.5687100
## [11]    0.8893693

Eigen value menunjukkan seberapa besar variasi data yang dapat dijelaskan oleh suatu komponen. Nilai eigen value yang besar berarti komponen tersebut menjelaskan data lebih banyak dibandingkan komponen lainnya. Karena itu, eigen value sering digunakan untuk menentukan komponen mana yang paling berpengaruh dan layak diperhatikan dalam analisis.

Eigen vector

eigen_vectors <- eigen_result$vectors
eigen_vectors
##                [,1]          [,2]         [,3]         [,4]         [,5]
##  [1,]  0.0228584952 -0.0158247293  0.025048832  0.008286601 -0.094203786
##  [2,] -0.0156851813  0.0082379827  0.012607209 -0.005994933  0.063944782
##  [3,]  0.2241968280 -0.0044277358  0.453772184  0.601734944 -0.592486825
##  [4,]  0.0845278489 -0.0635494091  0.021417463  0.665833839  0.612578629
##  [5,]  0.3032700134 -0.1976275992 -0.835204909  0.281450347 -0.171571033
##  [6,]  0.0710560295 -0.0325307981 -0.172391018 -0.122528794 -0.442337423
##  [7,] -0.0039834770  0.0017981648  0.014875990  0.018327932  0.030580260
##  [8,] -0.0005237225 -0.0006354985  0.010805636  0.005580850  0.007464542
##  [9,]  0.3237154091  0.9386317685 -0.111165518  0.011269971  0.037686736
## [10,]  0.8602198550 -0.2728943388  0.229755213 -0.315835470  0.180980271
## [11,] -0.0038238240 -0.0020264214 -0.008747619  0.001425133  0.021896627
##               [,6]         [,7]         [,8]         [,9]         [,10]
##  [1,] -0.066038155  0.966939008 -0.223346101 -0.001275823 -0.0082657011
##  [2,] -0.007498458 -0.156765672 -0.705923998  0.683108436 -0.0760513727
##  [3,] -0.145767748 -0.094057692 -0.017421084  0.015820825 -0.0051761247
##  [4,]  0.402840568  0.080792659  0.013790086 -0.014560342 -0.0234354579
##  [5,] -0.247321000 -0.027211189 -0.011597518  0.023495365  0.0107082126
##  [6,]  0.866178840  0.008479942 -0.048180731  0.010219609  0.0271089782
##  [7,] -0.014579571 -0.020040710 -0.110555214 -0.012802671  0.9686083650
##  [8,] -0.002203351  0.010172547 -0.048846711 -0.031886066  0.2126127540
##  [9,]  0.007211477  0.014298812 -0.001647690 -0.003576001  0.0003442493
## [10,]  0.012826050 -0.009233404  0.001466248 -0.001302705  0.0005266345
## [11,] -0.013659573 -0.153205726 -0.658957481 -0.728729955 -0.0965170844
##               [,11]
##  [1,]  0.0192636522
##  [2,] -0.0045775514
##  [3,]  0.0023938915
##  [4,]  0.0033410925
##  [5,] -0.0065686504
##  [6,]  0.0001067362
##  [7,]  0.2174530193
##  [8,] -0.9752335381
##  [9,] -0.0012569024
## [10,]  0.0017980940
## [11,]  0.0343048571

Eigen vector menunjukkan arah dan kontribusi setiap variabel terhadap suatu komponen. Nilai di dalam eigen vector menggambarkan seberapa besar pengaruh masing-masing variabel dalam membentuk pola utama data. Dari eigen vector, daapat diketahui variabel mana yang paling dominan dan berperan besar dalam analisis.