Analisis ini bertujuan untuk menghitung matriks korelasi, matriks
varians-kovarians, serta eigen value dan eigen vector menggunakan bahasa
pemrograman R. Data yang digunakan merupakan data yang terdiri dari
beberapa variabel numerik.Sebelumnya import terlebih dahulu data yang
akan dipakai dengan kode yang bernama SIRTUING.csv kemudian
menyimpannya ke dalam objek bernama molecul_data.
str(molecul_data) ini akan menampilkan struktur
datanya.
molecul_data <- read.csv(
"C:/Users/ASUS/Downloads/SIRTUIN6.csv"
)
str(molecul_data)
## 'data.frame': 100 obs. of 7 variables:
## $ SC.5 : num 0.541 0.815 0.734 0.625 0.46 ...
## $ SP.6 : num 7.64 6.59 6.86 7.01 4.93 ...
## $ SHBd : num 0.162 0 0 0.45 0.449 ...
## $ minHaaCH: num 0.445 0.497 0.508 0.484 0.482 ...
## $ maxwHBa : num 2.21 2 1.89 2.03 2.06 ...
## $ FMF : num 0.468 0.415 0.4 0.5 0.537 ...
## $ Class : chr "High_BFE" "High_BFE" "High_BFE" "High_BFE" ...
Dari data yang sudah diimport terdiri dari data numeric dan
kategorik. Untuk menghitung covarian dan yang lain hanya perlu data
numerik saja. Berikut kode untuk mengambil data yang numerik saja.
is.numeric akan mengecek apakah setiap kolom dalam data
bertipe numerik atau tidak. Fungsi ini kemudian diterapkan ke seluruh
kolom pada molecul_data menggunakan sapply,
sehingga dihasilkan sebuah vektor logika yang berisi nilai
TRUE untuk kolom numerik dan FALSE untuk kolom
non-numerik. Vektor logika tersebut selanjutnya digunakan sebagai indeks
kolom pada molecul_data[, ... ], yang berarti R akan
mengambil seluruh baris data dan hanya memilih kolom-kolom yang bernilai
TRUE. Dengan demikian, objek molecul_num yang
dihasilkan hanya berisi variabel-variabel numerik yang siap digunakan
untuk analisis statistik lanjutan seperti korelasi dan kovarians.
molecul_num <- molecul_data[, sapply(molecul_data, is.numeric)]
molecul_num
## SC.5 SP.6 SHBd minHaaCH maxwHBa FMF
## 1 0.540936 7.64192 0.162171 0.445270 2.205570 0.467742
## 2 0.815332 6.59011 0.000000 0.497445 2.003140 0.415385
## 3 0.734399 6.85522 0.000000 0.507748 1.885900 0.400000
## 4 0.624557 7.00949 0.450300 0.483648 2.027570 0.500000
## 5 0.460290 4.92643 0.448998 0.482293 2.064380 0.536585
## 6 0.739251 5.30234 0.000000 0.503995 1.840170 0.428571
## 7 0.282118 4.41568 0.417064 0.392469 2.196950 0.323077
## 8 0.359117 5.16718 0.000000 0.366074 2.268620 0.387097
## 9 0.535463 5.42374 0.556780 0.489314 1.927500 0.418182
## 10 0.553846 6.64192 0.430540 0.480831 1.987580 0.482143
## 11 0.770928 5.90091 0.323544 0.494985 1.945050 0.403846
## 12 0.381723 5.19560 0.479925 0.462768 2.179640 0.440000
## 13 0.274972 4.34101 1.238610 0.503565 2.024220 0.536585
## 14 0.816281 6.78098 0.360264 0.506231 1.894160 0.419355
## 15 0.746600 6.92017 0.768726 0.410466 2.166800 0.460317
## 16 0.500222 6.42944 0.294664 0.467798 2.131380 0.471698
## 17 0.557572 5.96878 0.435868 0.466251 2.003530 0.438596
## 18 0.518211 5.53707 0.000000 0.548255 1.749850 0.446429
## 19 0.282118 4.71436 1.314160 0.438579 2.032470 0.338983
## 20 0.784536 7.54034 0.000000 0.429298 2.169150 0.453125
## 21 0.628917 7.27583 0.000000 0.452444 2.160270 0.462687
## 22 0.409501 5.02379 0.000000 0.469384 2.039570 0.490196
## 23 0.628931 6.63444 0.000000 0.501485 1.878940 0.416667
## 24 0.518211 4.00117 0.495723 0.543530 1.808840 0.380952
## 25 0.439644 5.16315 0.448550 0.505835 1.890350 0.490566
## 26 0.890234 7.16885 0.293195 0.434815 2.093530 0.453125
## 27 0.546246 5.84903 0.522993 0.455035 2.009570 0.412698
## 28 0.412272 5.30479 0.378251 0.471879 1.944030 0.450000
## 29 0.411460 5.03047 0.986446 0.509571 2.013500 0.458333
## 30 0.373065 3.71563 0.420276 0.479832 1.993380 0.400000
## 31 0.469416 4.63567 0.000000 0.612470 1.729210 0.423077
## 32 0.786433 7.15302 0.000000 0.513629 1.659400 0.380952
## 33 0.440050 5.47159 0.000000 0.524244 2.002580 0.370968
## 34 0.359117 4.57471 0.209793 0.429979 2.154510 0.423729
## 35 0.247600 5.20834 0.407951 0.448684 2.128940 0.389830
## 36 0.329333 5.54473 0.501096 0.512315 2.015160 0.489796
## 37 0.439644 5.96540 0.000000 0.467512 2.210490 0.454545
## 38 0.569953 5.92953 0.394824 0.535542 1.734650 0.377049
## 39 0.525783 4.00272 0.000000 0.578673 1.496270 0.361702
## 40 0.399969 4.16113 0.862242 0.449551 2.184240 0.470588
## 41 0.359117 4.64136 0.362322 0.494876 2.055510 0.437500
## 42 0.414672 3.87480 0.430112 0.459106 2.066160 0.325581
## 43 0.416667 5.22219 0.587840 0.424874 2.187410 0.407407
## 44 0.310301 3.72521 0.000000 0.468705 1.838890 0.358491
## 45 0.191638 4.05310 0.246199 0.452885 2.108830 0.365385
## 46 0.191638 3.83978 0.334662 0.430995 2.253030 0.431818
## 47 0.652835 4.57276 0.439866 0.442000 2.016200 0.333333
## 48 0.451184 3.28186 0.908275 0.613885 1.424980 0.320755
## 49 0.253934 3.99419 0.419960 0.504726 2.011770 0.333333
## 50 0.284518 4.36249 0.380677 0.472382 2.048040 0.358491
## 51 0.393471 5.68910 0.264742 0.420651 2.346130 0.360000
## 52 0.309489 3.43659 0.380631 0.461808 2.130290 0.350000
## 53 0.405309 4.97964 1.465000 0.547479 1.749830 0.333333
## 54 0.503325 3.06387 1.180590 0.544552 1.733020 0.319149
## 55 0.532118 3.63253 0.346120 0.000000 0.009025 0.372549
## 56 0.389520 3.84207 0.345910 0.559813 1.696010 0.352941
## 57 0.219416 3.22630 0.201241 0.482328 2.064740 0.416667
## 58 0.319036 3.37614 0.474902 0.550379 1.835490 0.377778
## 59 0.235702 2.52356 0.410865 0.449222 2.046150 0.351351
## 60 0.136083 3.33865 0.515312 0.555337 1.910710 0.395833
## 61 0.393229 4.45894 0.384414 0.464438 2.085200 0.269231
## 62 0.381723 5.10939 0.000000 0.433054 2.218840 0.388889
## 63 0.404735 3.89057 0.520117 0.652003 1.618340 0.238095
## 64 0.918546 5.64536 0.660618 0.479358 1.886880 0.307692
## 65 0.823193 3.89252 0.315370 0.424324 1.988030 0.296296
## 66 0.563241 3.53061 0.395931 0.567914 1.488900 0.240741
## 67 0.525783 3.35037 0.000000 0.512025 1.814290 0.372093
## 68 0.393229 3.53571 1.188920 0.434254 2.080700 0.486486
## 69 0.284518 3.54521 0.000000 0.614303 1.609770 0.414634
## 70 0.354351 3.81865 0.479925 0.493265 1.901270 0.358491
## 71 0.136083 3.34724 0.891503 0.489801 1.974420 0.418605
## 72 0.282118 2.88341 0.417126 0.542979 1.821370 0.268293
## 73 0.117851 3.28853 0.000000 0.000000 0.526565 0.404762
## 74 0.083333 3.87774 0.335309 0.456568 2.108230 0.343284
## 75 0.388869 2.68691 0.000000 0.393893 2.331600 0.352941
## 76 0.235702 2.81622 0.000000 0.407168 3.778650 0.297872
## 77 0.428152 3.98745 0.834817 0.495192 1.868860 0.363636
## 78 0.284518 2.48542 0.490229 0.468221 2.065750 0.377778
## 79 0.379717 4.42463 0.000000 0.000000 2.338790 0.307692
## 80 0.302749 5.26819 0.368524 0.616430 1.755800 0.411765
## 81 0.117851 2.39762 0.418575 0.453376 2.039630 0.340426
## 82 0.788675 3.21249 0.378616 0.428933 2.094980 0.300000
## 83 0.354351 2.95510 0.000000 0.431463 2.165360 0.250000
## 84 0.589217 5.09807 0.000000 0.393998 2.275430 0.403509
## 85 0.191638 3.58200 0.882505 0.360055 2.382100 0.312500
## 86 0.216506 2.29193 0.743778 0.316301 2.415410 0.243902
## 87 0.242834 2.45381 0.589528 0.416399 2.129540 0.225000
## 88 0.166667 2.39122 0.000000 0.340660 2.412750 0.318182
## 89 0.235702 2.54661 0.379107 0.000000 0.232192 0.269231
## 90 0.323802 2.09181 0.788531 0.509167 1.916750 0.292683
## 91 0.284518 3.91652 0.351444 0.720723 1.214130 0.333333
## 92 0.303561 2.31848 0.537314 0.442655 2.186430 0.354839
## 93 0.253934 3.03819 0.000000 0.481009 2.096270 0.319149
## 94 0.408956 3.27043 0.000000 0.000000 0.399323 0.326531
## 95 0.400672 2.85285 0.000000 0.337441 2.420370 0.282609
## 96 0.083333 3.50569 0.000000 0.438522 2.221560 0.307692
## 97 0.707068 4.58381 0.000000 0.000000 0.011251 0.153846
## 98 0.216506 3.09490 0.000000 0.000000 0.000000 0.326531
## 99 0.271018 2.39997 0.000000 0.356727 2.346090 0.342105
## 100 0.136083 3.28751 0.000000 0.380529 2.346010 0.375000
cor(molecul_num) menghitung korelasi antar variable
kemudian disimpan di cor_matrix. Jika nilai korelasi nya 1
berarti positif sempurna, -1 berarti negatif sempurna, dan 0 berarti
tidak ada korelasi linear. Pada output yang dihasilnkan terdapat
variable SC.5 dengan SP.6 adalah 0.66208234
cor_matrix <- cor(molecul_num)
cor_matrix
## SC.5 SP.6 SHBd minHaaCH maxwHBa FMF
## SC.5 1.00000000 0.66208234 -0.10165734 0.1101450 -0.08366394 0.1816990
## SP.6 0.66208234 1.00000000 -0.11309294 0.1956995 0.08952777 0.5798669
## SHBd -0.10165734 -0.11309294 1.00000000 0.2325906 0.04922928 0.0525741
## minHaaCH 0.11014501 0.19569946 0.23259056 1.0000000 0.46076976 0.2582501
## maxwHBa -0.08366394 0.08952777 0.04922928 0.4607698 1.00000000 0.1898255
## FMF 0.18169903 0.57986685 0.05257410 0.2582501 0.18982546 1.0000000
##Matriks Varians–Kovarians Kode
cov_matrik <- cov(molecul_num) digunakan untuk
menghitung matriks varians–kovarians dari data numerik yang terdapat
dalam molecul_num. Matriks ini menggambarkan tingkat penyebaran data
serta hubungan antar variabel.
cov_matrik <- cov(molecul_num)
cov_matrik
## SC.5 SP.6 SHBd minHaaCH maxwHBa
## SC.5 0.038073191 0.18129548 -0.006730516 0.002986591 -0.008537740
## SP.6 0.181295476 1.96938510 -0.053851871 0.038164206 0.065707969
## SHBd -0.006730516 -0.05385187 0.115133039 0.010967139 0.008736117
## minHaaCH 0.002986591 0.03816421 0.010967139 0.019310901 0.033487306
## maxwHBa -0.008537740 0.06570797 0.008736117 0.033487306 0.273520544
## FMF 0.002561709 0.05879780 0.001288960 0.002593040 0.007173265
## FMF
## SC.5 0.002561709
## SP.6 0.058797800
## SHBd 0.001288960
## minHaaCH 0.002593040
## maxwHBa 0.007173265
## FMF 0.005220775
Perintah eigen_result <- eigen(cov_matrik) digunakan
untuk melakukan dekomposisi eigen terhadap matriks varians–kovarians.
Proses ini bertujuan untuk memecah matriks kovarians menjadi dua
komponen utama, yaitu eigenvalue dan eigenvector. Eigenvalue menunjukkan
besarnya variasi data yang dapat dijelaskan oleh masing-masing komponen,
sedangkan eigenvector merepresentasikan arah atau kombinasi linier
variabel yang membentuk komponen utama tersebut.
eigen_result <- eigen(cov_matrik)
eigen_result
## eigen() decomposition
## $values
## [1] 1.992769556 0.276942728 0.113877882 0.020953542 0.013224463 0.002875384
##
## $vectors
## [,1] [,2] [,3] [,4] [,5]
## [1,] -0.09219130 0.06060081 -0.003107518 0.970452736 -0.156055543
## [2,] -0.99396947 0.03294359 0.029422161 -0.090947728 -0.005846681
## [3,] 0.02852534 -0.07545079 0.990744881 -0.004387236 -0.107950230
## [4,] -0.01988516 -0.12606134 0.096256185 0.172774447 0.969390992
## [5,] -0.03789685 -0.98654030 -0.087766817 0.037590405 -0.127206548
## [6,] -0.02966771 -0.01990490 0.024103802 -0.136626137 0.089770986
## [,6]
## [1,] 0.147264400
## [2,] -0.042048512
## [3,] -0.015670467
## [4,] -0.069842391
## [5,] -0.002121028
## [6,] 0.985604940
Perintah eigen_result$values digunakan untuk menampilkan
nilai eigen (eigen value) yang diperoleh dari matriks varians–kovarians.
Nilai eigen ini merepresentasikan besarnya variansi data yang dapat
dijelaskan oleh masing-masing komponen utama, di mana semakin besar
nilai eigen maka semakin besar pula kontribusi variansi yang
dijelaskan.
eigen_result$values
## [1] 1.992769556 0.276942728 0.113877882 0.020953542 0.013224463 0.002875384
eigen_result
## eigen() decomposition
## $values
## [1] 1.992769556 0.276942728 0.113877882 0.020953542 0.013224463 0.002875384
##
## $vectors
## [,1] [,2] [,3] [,4] [,5]
## [1,] -0.09219130 0.06060081 -0.003107518 0.970452736 -0.156055543
## [2,] -0.99396947 0.03294359 0.029422161 -0.090947728 -0.005846681
## [3,] 0.02852534 -0.07545079 0.990744881 -0.004387236 -0.107950230
## [4,] -0.01988516 -0.12606134 0.096256185 0.172774447 0.969390992
## [5,] -0.03789685 -0.98654030 -0.087766817 0.037590405 -0.127206548
## [6,] -0.02966771 -0.01990490 0.024103802 -0.136626137 0.089770986
## [,6]
## [1,] 0.147264400
## [2,] -0.042048512
## [3,] -0.015670467
## [4,] -0.069842391
## [5,] -0.002121028
## [6,] 0.985604940
Perintah eigen_result$vectors digunakan untuk
menampilkan eigen vector yang berpasangan dengan setiap eigen value
hasil dekomposisi matriks varians–kovarians. Eigenvector ini menunjukkan
bobot atau loading dari masing-masing variabel terhadap komponen utama,
sehingga menggambarkan seberapa besar kontribusi setiap variabel dalam
membentuk komponen tersebut
eigen_result$vectors
## [,1] [,2] [,3] [,4] [,5]
## [1,] -0.09219130 0.06060081 -0.003107518 0.970452736 -0.156055543
## [2,] -0.99396947 0.03294359 0.029422161 -0.090947728 -0.005846681
## [3,] 0.02852534 -0.07545079 0.990744881 -0.004387236 -0.107950230
## [4,] -0.01988516 -0.12606134 0.096256185 0.172774447 0.969390992
## [5,] -0.03789685 -0.98654030 -0.087766817 0.037590405 -0.127206548
## [6,] -0.02966771 -0.01990490 0.024103802 -0.136626137 0.089770986
## [,6]
## [1,] 0.147264400
## [2,] -0.042048512
## [3,] -0.015670467
## [4,] -0.069842391
## [5,] -0.002121028
## [6,] 0.985604940
eigen_result
## eigen() decomposition
## $values
## [1] 1.992769556 0.276942728 0.113877882 0.020953542 0.013224463 0.002875384
##
## $vectors
## [,1] [,2] [,3] [,4] [,5]
## [1,] -0.09219130 0.06060081 -0.003107518 0.970452736 -0.156055543
## [2,] -0.99396947 0.03294359 0.029422161 -0.090947728 -0.005846681
## [3,] 0.02852534 -0.07545079 0.990744881 -0.004387236 -0.107950230
## [4,] -0.01988516 -0.12606134 0.096256185 0.172774447 0.969390992
## [5,] -0.03789685 -0.98654030 -0.087766817 0.037590405 -0.127206548
## [6,] -0.02966771 -0.01990490 0.024103802 -0.136626137 0.089770986
## [,6]
## [1,] 0.147264400
## [2,] -0.042048512
## [3,] -0.015670467
## [4,] -0.069842391
## [5,] -0.002121028
## [6,] 0.985604940