# Data set nilai siswa
X1 <- c(70, 40, 60, 80, 80, 70, 50, 90, 70, 80)
X2 <- c(40, 10, 30, 60, 50, 20, 30, 50, 40, 20)
X3 <- c(30, 80, 50, 10, 70, 90, 30, 80, 50, 20)
# merge menjadi data frame
datasiswa <- data.frame(X1, X2, X3)
head(datasiswa)
## X1 X2 X3
## 1 70 40 30
## 2 40 10 80
## 3 60 30 50
## 4 80 60 10
## 5 80 50 70
## 6 70 20 90
str(datasiswa)
## 'data.frame': 10 obs. of 3 variables:
## $ X1: num 70 40 60 80 80 70 50 90 70 80
## $ X2: num 40 10 30 60 50 20 30 50 40 20
## $ X3: num 30 80 50 10 70 90 30 80 50 20
Keterangan: X1: MTK X2: IPA X3: Bahasa
A. Tentukan matriks ragam koragam dari dari data mata pelajaran tersebut!
# Matriks Ragam
matriks_ragam <- var(datasiswa)
matriks_ragam
## X1 X2 X3
## X1 232.22222 161.1111 -43.33333
## X2 161.11111 250.0000 -127.77778
## X3 -43.33333 -127.7778 787.77778
B. Tentukan akar ciri dan vektor ciri dari matriks ragam koragam tersebut!
# Akar ciri
akar_ciri <- eigen(matriks_ragam)
akar_ciri
## eigen() decomposition
## $values
## [1] 827.39426 367.61293 74.99282
##
## $vectors
## [,1] [,2] [,3]
## [1,] -0.1375708 0.6990371 0.70172743
## [2,] -0.2504597 0.6608892 -0.70745703
## [3,] 0.9583028 0.2730799 -0.08416157
terdapat akar ciri lambda 1>lambda 2>lambda 3 dan juga eigen vektor nya
C. Tentukan komponen utama yang terbentuk melalui matriks ragam koragam tersebut!
# Komponen Utama
komponen_utama <- prcomp(datasiswa,scale=FALSE,center = FALSE)
summary(komponen_utama)
## Importance of components:
## PC1 PC2 PC3
## Standard deviation 99.7440 27.82006 9.39609
## Proportion of Variance 0.9202 0.07159 0.00817
## Cumulative Proportion 0.9202 0.99183 1.00000
plot dari komponen utama
library(factoextra)
fviz_eig(komponen_utama)
fviz_screeplot(komponen_utama,geom="line")
Dapat dilihat bedasarkan scree plot, komponen utama dengan menggunakan sebanyak 2 komponen utama dapat menjelaskan keragaman sebesar 92%+7.2%= 99,2% dan hanya 0,8% yang tidak dapat dijelaskan
D. Apa yang dapat diinterpretasikan dari komponen utama yang dihasilkan?
# Interpretasi Komponen Utama
interpretasi <- komponen_utama$rotation
interpretasi
## PC1 PC2 PC3
## X1 -0.7347714 -0.4011079 0.5470132
## X2 -0.3762719 -0.4299618 -0.8207023
## X3 -0.5643850 0.8088543 -0.1649980
Vektor ciri pada komponen utama 1 memiliki nilai negatif pada semua mata pelajaran, hal ini dapat di jelaskan bahwa semakin besar score value siswa di komponen utama 1 maka mengindikasikan bahwa semakin kecil juga nilai siswa tersebut di semua mata pelajaran.
Vektor ciri pada komponen utama 2 memiliki 2 nilai negatif pada mata pelajaran X1 dan X2 dan berbanding terbalik dengan X3 yang memiliki nilai positif, hal ini dapat di jelaskan bahwa semakin besar score value siswa di komponen utama 2 maka mengindikasikan bahwa semakin besar nilai siswa tersebut di mata pelajaran X3 dan sebaliknya untuk mata pelajaran X1 dan X2 semakin kecil.
INGAT: X1: MTK X2: IPA X3: Bahasa
# Menghitung nilai score value
score_value <- komponen_utama$x
score_value
## PC1 PC2 PC3
## [1,] -83.41643 -21.010401 0.5128898
## [2,] -78.30437 44.364406 0.4736637
## [3,] -83.59369 3.477383 -0.0501789
## [4,] -87.00188 -49.797802 -7.1310645
## [5,] -117.10226 3.033073 -8.8239215
## [6,] -109.75409 36.120093 7.0270557
## [7,] -64.95828 -8.688624 -2.2203506
## [8,] -130.09382 7.110536 -5.0037698
## [9,] -94.70413 -4.833315 -2.7870702
## [10,] -77.59485 -24.510786 24.0470473
fviz_pca_var(komponen_utama, col.var = "steelblue")
fviz_pca_biplot(komponen_utama, repel = TRUE, col.var = "black")
fviz_pca_ind(komponen_utama, col.ind = "cos2", gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"),
repel = TRUE)
komponen utama 1(dim1/sumbu x) menjelaskan bahwa interpretasi dari
komponen satu terlihat pada siswa ke 7
komponen utama 2(dim2/sumbu y) menjelaskan bahwa interpretasi dari komponen dua terlihat pada siswa ke 2
berikut data untuk perbandingan
# Data set nilai siswa
datasiswa
## X1 X2 X3
## 1 70 40 30
## 2 40 10 80
## 3 60 30 50
## 4 80 60 10
## 5 80 50 70
## 6 70 20 90
## 7 50 30 30
## 8 90 50 80
## 9 70 40 50
## 10 80 20 20