Titanic.Dataset <- read.csv("~/Titanic/Titanic-Dataset.csv")
head(Titanic.Dataset)
## PassengerId Survived Pclass
## 1 1 0 3
## 2 2 1 1
## 3 3 1 3
## 4 4 1 1
## 5 5 0 3
## 6 6 0 3
## Name Sex Age SibSp Parch
## 1 Braund, Mr. Owen Harris male 22 1 0
## 2 Cumings, Mrs. John Bradley (Florence Briggs Thayer) female 38 1 0
## 3 Heikkinen, Miss. Laina female 26 0 0
## 4 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35 1 0
## 5 Allen, Mr. William Henry male 35 0 0
## 6 Moran, Mr. James male NA 0 0
## Ticket Fare Cabin Embarked
## 1 A/5 21171 7.2500 S
## 2 PC 17599 71.2833 C85 C
## 3 STON/O2. 3101282 7.9250 S
## 4 113803 53.1000 C123 S
## 5 373450 8.0500 S
## 6 330877 8.4583 Q
data_selected <- Titanic.Dataset[, c("Age", "SibSp", "Parch", "Fare")]
colSums(is.na(data_selected))
## Age SibSp Parch Fare
## 177 0 0 0
data_clean <- na.omit(data_selected)
colSums(is.na(data_clean))
## Age SibSp Parch Fare
## 0 0 0 0
summary(data_clean)
## Age SibSp Parch Fare
## Min. : 0.42 Min. :0.0000 Min. :0.0000 Min. : 0.00
## 1st Qu.:20.12 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.: 8.05
## Median :28.00 Median :0.0000 Median :0.0000 Median : 15.74
## Mean :29.70 Mean :0.5126 Mean :0.4314 Mean : 34.69
## 3rd Qu.:38.00 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.: 33.38
## Max. :80.00 Max. :5.0000 Max. :6.0000 Max. :512.33
cor_matrix <- cor(data_clean)
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
Hubungan Age & SibSp nilai korelasi -0.308 yang menunjukkan hubungan negatif sedang, dimana semakin muda penumpang biasanya membawa saudara/pasangan.
Hubungan Age & Parch nilai korelasi -0.189 yang menunjukkan hubungan negatif lemah, dimana semakin muda penumpang maka cenderung membawa orangtua/anak.
Hubungan Age & Fare nilai korelasi 0.096 yang menunjukkan hubungan positif sangat lemah, dimana usia hampir tidak mempengaruhi harga tiket.
Hubungan SibSp & Parch nilai korelasi 0.384 yang menunjukkan hubungan positif sedang, dimana seorang penumpang yang membawa saudara/pasangan, biasanya membawa orangtua/anak-nya juga.
Hubungan SibSp & Fare nilai korelasi 0.138 yang menunjukkan hubungan positif lemah, dimana semakin banyak jumlah saudara/pasangan cenderung membayar tiket lebih mahal.
Hubungan Parch & Fare nilai hubungan 0.205 yang menunjukkan hubungan positif lemah, dimana semakin banyak anggota keluarga cenderung membeli tiket sedikit lebih mahal.
Kesimpulannya adalah tidak terdapat hubungan yang sangat kuat antar variabelnya. Hubungan yang paling kuat hanya dimiliki oleh SibSp dengan Parch yaitu dengan korelasi sebesar 0.384 yang menunjukkan hubungan positif sedang serta variable Fare tidak terlalu berkorelasi kuat dengan variabel yang lain.
cov_matrix <- cov(data_clean)
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
Hubungan Age & SibSp nilai kovarians -4.163 yang menunjukkan hubungan negatif, dimana semakin muda penumpang biasanya membawa saudara/pasangan.
Hubungan Age & Parch nilai kovarians -2.344 yang menunjukkan hubungan negatif, dimana semakin muda penumpang maka cenderung membawa orangtua/anak.
Hubungan Age & Fare nilai kovarians 73.849 yang menunjukkan hubungan positif, dimana semakin tua cenderung membayar tiket sedikit lebih mahal.
Hubungan SibSp & Parch nilai kovarians 0.304 yang menunjukkan hubungan positif, dimana seorang penumpang yang membawa saudara/pasangan, biasanya membawa orangtua/anak-nya juga.
Hubungan SibSp & Fare nilai kovarians 6.806 yang menunjukkan hubungan positif, dimana semakin banyak jumlah saudara/pasangan cenderung membayar tiket lebih mahal.
Hubungan Parch & Fare nilai kovarians 9.262 yang menunjukkan hubungan positif, dimana semakin banyak anggota keluarga cenderung membeli tiket sedikit lebih mahal.
Kesimpulannya adalah variabel Fare memiliki variansi terbesar di antara variabel lainnya yaitu sebesar 2800.41 yang menunjukkan bahwa harga tiket sangat bervariasi. Variabel Age memiliki variasi sebesar 211.02, sedangkan variabel Parch dan SibSp memiliki variasi yang sangat kecil. Kovarians negatif antara Age dengan SibSp dan Parch menunjukkan bahwa penumpang yang lebih muda cenderung berpergian bersama pasangan/saudara/orangtua.
eigen_result <- eigen(cor_matrix)
eigen_values <- eigen_result$values
eigen_values
## [1] 1.6367503 1.1071770 0.6694052 0.5866676
Berdasarkan hasil perhitungan di atas diperoleh nilai komponen sebagai berikut: 1.6367503 ; 1.1071770 ; 0.6694052 ; 0.5866676. Persentase variasi dari masing-masing komponen tersebut adalah 40.9% ; 27.7% ; 16.7% ; 14.7% yang dapat dicari dengan rumus (eigenvalue/n)x100%. Dua komponen pertama mampu menjelaskan sekitar 68.6% variasi total data yang menunjukkann bahwa hanya 2 komponen utama yang layak dipertahankan.
eigen_vectors <- eigen_result$vectors
eigen_vectors
## [,1] [,2] [,3] [,4]
## [1,] 0.4388714 -0.5962415 0.56095237 0.37043268
## [2,] -0.6250770 0.0732461 0.05500006 0.77517016
## [3,] -0.5908590 -0.1774532 0.60558695 -0.50265342
## [4,] -0.2599159 -0.7795136 -0.56175785 -0.09607493
Berdasarkan hasil eigenvector diatas, komponen pertama dipengaruhi oleh variabel SibSp (0.625) dan Parch (0.591) yang menggambarkan dimensi ukuran keluarga penumpang. Komponen kedua dipengaruhi oleh variabel Age (0.596) dan Fare (0.779) yang menggambarkan dimensi ekonomi dan usia. Oleh karena itu, variasi utama dalam “Titanic-Dataset” dapat dijelaskann oleh dua faktor utama, yaitu faktor keluarga dan faktor ekonomi/usia.