import data


data <- read.csv("Maternal Health Risk Data Set.csv")
str(data)
## 'data.frame':    1014 obs. of  7 variables:
##  $ Age        : int  25 35 29 30 35 23 23 35 32 42 ...
##  $ SystolicBP : int  130 140 90 140 120 140 130 85 120 130 ...
##  $ DiastolicBP: int  80 90 70 85 60 80 70 60 90 80 ...
##  $ BS         : num  15 13 8 7 6.1 7.01 7.01 11 6.9 18 ...
##  $ BodyTemp   : num  98 98 100 98 98 98 98 102 98 98 ...
##  $ HeartRate  : int  86 70 80 70 76 70 78 86 70 70 ...
##  $ RiskLevel  : chr  "high risk" "high risk" "high risk" "high risk" ...
data_num <- data[, sapply(data, is.numeric)]

a.korelasi matriks

cor_matrix <- cor(data_num, method = "pearson")
cor_matrix
##                     Age  SystolicBP DiastolicBP         BS    BodyTemp
## Age          1.00000000  0.41604545  0.39802629  0.4732843 -0.25532314
## SystolicBP   0.41604545  1.00000000  0.78700648  0.4251717 -0.28661552
## DiastolicBP  0.39802629  0.78700648  1.00000000  0.4238241 -0.25753832
## BS           0.47328434  0.42517166  0.42382407  1.0000000 -0.10349336
## BodyTemp    -0.25532314 -0.28661552 -0.25753832 -0.1034934  1.00000000
## HeartRate    0.07979763 -0.02310796 -0.04615057  0.1428672  0.09877104
##               HeartRate
## Age          0.07979763
## SystolicBP  -0.02310796
## DiastolicBP -0.04615057
## BS           0.14286723
## BodyTemp     0.09877104
## HeartRate    1.00000000

penjelasan: Berdasarkan matriks korelasi, terlihat bahwa age memiliki hubungan positif sedang dengan SystolicBP, DiastolicBP, dan BS, yang menunjukkan bahwa peningkatan usia cenderung diikuti oleh kenaikan tekanan darah dan kadar gula darah. Hubungan paling kuat terjadi antara SystolicBP dan DiastolicBP, menandakan keduanya meningkat secara bersamaan. Variabel BS juga memiliki korelasi positif sedang dengan tekanan darah. Sebaliknya, BodyTemp menunjukkan korelasi negatif lemah terhadap sebagian besar variabel, sedangkan HeartRate memiliki korelasi yang sangat lemah, sehingga kedua variabel ini relatif tidak memiliki hubungan linier yang signifikan dengan variabel lainnya.

b.varians dan kovarians

cov_matrix <- cov(data_num)
cov_matrix
##                    Age SystolicBP DiastolicBP         BS   BodyTemp HeartRate
## Age         181.559065 103.171539   74.471739 21.0035619 -4.7180044  8.697168
## SystolicBP  103.171539 338.704005  201.121845 25.7712999 -7.2338429 -3.439938
## DiastolicBP  74.471739 201.121845  192.815323 19.3828770 -4.9042413 -5.183543
## BS           21.003562  25.771300   19.382877 10.8473512 -0.4674483  3.806040
## BodyTemp     -4.718004  -7.233843   -4.904241 -0.4674483  1.8806951  1.095640
## HeartRate     8.697168  -3.439938   -5.183543  3.8060397  1.0956395 65.427104

penjelasan: Berikut penjelasan singkat dalam 1 paragraf untuk output variance–covariance matrix di atas:

Berdasarkan matriks varians–kovarians, nilai diagonal menunjukkan varians masing-masing variabel, di mana SystolicBP dan HeartRate memiliki varians paling besar, menandakan tingkat penyebaran data yang tinggi. Nilai kovarians positif antara Age, SystolicBP, DiastolicBP, dan BS menunjukkan bahwa variabel-variabel tersebut cenderung meningkat secara bersamaan. Sebaliknya, BodyTemp memiliki kovarians negatif terhadap sebagian besar variabel lain, yang mengindikasikan hubungan berlawanan arah meskipun lemah. Kovarians HeartRate dengan variabel lain relatif kecil dan tidak konsisten, sehingga menunjukkan bahwa denyut jantung tidak memiliki keterkaitan yang kuat dengan variabel kesehatan lainnya dalam dataset ini.

c. eigen value dan eigen vektor

eigen_result <- eigen(cov_matrix)
eigen_result$values
## [1] 529.521825 136.772898  64.572037  51.358769   7.360073   1.647943
eigen_result$vectors
##              [,1]         [,2]        [,3]         [,4]        [,5]
## [1,] -0.346411189  0.923900546 -0.13192259  0.042731491 -0.08198705
## [2,] -0.764857940 -0.293487053  0.14910706  0.553048994 -0.02349903
## [3,] -0.537978589 -0.186074547 -0.12389090 -0.811464330 -0.04575582
## [4,] -0.072118241  0.069777475  0.04387199 -0.031191932  0.99247862
## [5,]  0.018657383 -0.008883756  0.01905652 -0.008215683  0.04608110
## [6,]  0.004638836  0.143880423  0.97094112 -0.181096759 -0.05911889
##              [,6]
## [1,]  0.021345781
## [2,]  0.014469639
## [3,]  0.006196148
## [4,] -0.044928412
## [5,]  0.998508320
## [6,] -0.016098692

penjelasan: Berikut penjelasan narasi yang ringkas dan sederhana untuk hasil eigen value dan eigen vector di atas (dijadikan 1 paragraf):

Hasil eigen value menunjukkan bahwa komponen utama pertama memiliki nilai paling besar (529,52), yang berarti komponen ini menjelaskan variasi data terbesar, diikuti oleh komponen kedua (136,77) dan ketiga (64,57). Hal ini menandakan bahwa sebagian besar informasi dalam data dapat direpresentasikan oleh beberapa komponen utama saja. Eigen vector menunjukkan kontribusi masing-masing variabel terhadap setiap komponen, di mana komponen utama pertama didominasi oleh SystolicBP, DiastolicBP, dan Age, sehingga variasi terbesar dalam data terutama dipengaruhi oleh tekanan darah dan usia. Komponen-komponen selanjutnya merepresentasikan variasi yang lebih kecil dan dipengaruhi oleh variabel lain seperti BodyTemp dan HeartRate, yang kontribusinya relatif rendah dibandingkan variabel tekanan darah.