# 1. PERSIAPAN DATA
# Memastikan dataset terbaca (pastikan file .csv berada di folder yang sama)
titanic_data <- read.csv("Titanic-Dataset.csv")
# Memilih kolom spesifik dan menghapus baris dengan NA (Missing Values)
selected_data <- titanic_data[, c("Age", "SibSp", "Parch", "Fare")]
clean_data <- na.omit(selected_data)
# a) Correlation Matrix (Matriks Korelasi)
cat("\na) Correlation Matrix \n")
##
## a) Correlation Matrix
cor_matrix <- cor(clean_data)
print(cor_matrix)
## Age SibSp Parch Fare
## Age 1.00000000 -0.3082468 -0.1891193 0.09606669
## SibSp -0.30824676 1.0000000 0.3838199 0.13832879
## Parch -0.18911926 0.3838199 1.0000000 0.20511888
## Fare 0.09606669 0.1383288 0.2051189 1.00000000
# PENJELASAN (a):
# Matriks ini menunjukkan kekuatan hubungan antara dua variabel.
# Rentang nilai: -1 (negatif kuat) hingga 1 (positif kuat).
# Contoh: Jika korelasi SibSp & Parch positif, artinya orang yang membawa saudara cenderung juga membawa orang tua/anak.
# b) Variance-Covariance Matrix
cat("\nb) Variance-Covariance Matrix \n")
##
## b) Variance-Covariance Matrix
cov_matrix <- cov(clean_data)
print(cov_matrix)
## Age SibSp Parch Fare
## Age 211.019125 -4.1633339 -2.3441911 73.849030
## SibSp -4.163334 0.8644973 0.3045128 6.806212
## Parch -2.344191 0.3045128 0.7281027 9.262176
## Fare 73.849030 6.8062117 9.2621760 2800.413100
# PENJELASAN (b):
# Diagonal utama (atas-kiri ke bawah-kanan) adalah VARIANS masing-masing variabel.
# Varians menunjukkan seberapa jauh data tersebar dari rata-ratanya.
# Nilai di luar diagonal utama adalah KOVARIANS, yang menunjukkan arah hubungan (positif/negatif) antara dua variabel berbeda dalam skala aslinya.
# c) Eigen Value dan Eigen Vector
cat("\n--- c) Eigen Value & Eigen Vector ---\n")
##
## --- c) Eigen Value & Eigen Vector ---
eigen_result <- eigen(cov_matrix)
cat("\nEigen Values:\n")
##
## Eigen Values:
print(eigen_result$values)
## [1] 2802.5636587 209.0385659 0.9438783 0.4787214
cat("\nEigen Vectors:\n")
##
## Eigen Vectors:
print(eigen_result$vectors)
## [,1] [,2] [,3] [,4]
## [1,] 0.028477552 0.99929943 -0.024018111 0.0035788596
## [2,] 0.002386349 -0.02093144 -0.773693322 0.6332099362
## [3,] 0.003280818 -0.01253786 -0.633088089 -0.7739712590
## [4,] 0.999586200 -0.02837826 0.004609234 0.0009266652
# PENJELASAN (c):
# 1. EIGEN VALUES: Menunjukkan jumlah varians yang ditangkap oleh setiap
# Principal Component (PC). Nilai yang besar menunjukkan komponen yang paling penting.
# 2. EIGEN VECTORS: Menunjukkan bobot atau kontribusi setiap variabel asli
# (Age, SibSp, dll) terhadap pembentukan komponen tersebut.
# Ini menentukan "arah" dari data dalam ruang multidimensi.