Load Dataset

df<-read.csv("Titanic-Dataset.csv")
head(df)
##   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
colnames(df)
##  [1] "PassengerId" "Survived"    "Pclass"      "Name"        "Sex"        
##  [6] "Age"         "SibSp"       "Parch"       "Ticket"      "Fare"       
## [11] "Cabin"       "Embarked"

Hapus Kolom selain Kolom Age, Sibsp, Parch, Fare

df<-df[ ,-c(1,2,3,4,5,9,11,12)]
head(df)
##   Age SibSp Parch    Fare
## 1  22     1     0  7.2500
## 2  38     1     0 71.2833
## 3  26     0     0  7.9250
## 4  35     1     0 53.1000
## 5  35     0     0  8.0500
## 6  NA     0     0  8.4583

Cek dan hapus Missing Value

sum(is.na(df))
## [1] 177
sum(is.null(df))
## [1] 0
df<-na.omit(df)
head(df)
##   Age SibSp Parch    Fare
## 1  22     1     0  7.2500
## 2  38     1     0 71.2833
## 3  26     0     0  7.9250
## 4  35     1     0 53.1000
## 5  35     0     0  8.0500
## 7  54     0     0 51.8625

Matrix Correlation

korelasi_matriks<- cor(df)
print(korelasi_matriks)
##               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

semakin mendekati 1 maka hubungan semakin kuat, sebaliknya jika semakin mendekati -1 maka hubungan lemah atau tidak kuat kesimpulan pada matriks korelasi di atas yakni tidak adanya korelasi yang kuat antara satu hubungan dengan hubungan lain karena mayoritas lebih mendekat pada -1

Varians dan Covarians Matrix

varian_kovarian_matriks<- cov(df)
print(varian_kovarian_matriks)
##              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

pada matriks di atas bisa dilihat bahwa fare memiliki varian terbesar diantara yang lain, sedangkan age memiliki varian sedang dan yang memiliki varian paling kecil adalah sibsp dan parch

Eigen Vlue dan Eigen Vector

hasil_eigen<-eigen(varian_kovarian_matriks)

eigen_value<-hasil_eigen$values
eigen_vektor<-hasil_eigen$vectors

print(eigen_vektor)
##             [,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
print(eigen_value)
## [1] 2802.5636587  209.0385659    0.9438783    0.4787214

kesimpulan dari eigen value dan eigen vektor adalah Variasi terbesar data berasal dari harga tiket, disusul usia. Dua komponen utama sudah cukup mewakili hampir seluruh informasi dataset sedangkan faktor keluarga hanya berpengaruh kecil