Disusun oleh :
Kelas : A
Aslab :
Helni Nurhidayat
Analisis komponen utama merupakan suatu tehnik statistik untuk mengubah dari
sebagian besar variabel asli yang digunakan yang saling berkorelasi satu dengan yang lainnya
menjadi satu set variabel baru yang lebih kecil dan saling bebas (tidak berkorelas berkorelasi
lagi). Jadi analisis komponen analisis komponen utama berguna untuk mereduksi data,
sehingga lebih mudah untuk menginterpretasikan data-data tersebut (Johnson & Wichern,
1982). Reduksi dimensi dari variabel acak X dilakukan dengan mendefinisikan p-variat
variabel acak baru Y. Model matematisnya dapat dinyatakan dalam bentuk berikut:
Dimana :
Wi adalah bobot atau koefisien untuk variabel ke i
Xi adalah variabel ke-i
Y adalah kombinasi linier dari variabel X
Banyaknya komponen utama yang terbentuk sama dengan banyaknya variabel asli.
Pereduksian (penyederhanaan) dimensi dilakukan dengan kriteria persentase keragaman data
yang diterangkan oleh beberapa k beberapa komponen u omponen utama pert tama pertama.
Apabila beberapa komponen utama pertama telah menerangkan lebih dari 75% angkan lebih
dari 75% keragaman data asli, keragaman data asli, maka analisis cukup dilakukan sampai
dengan komponen utama tersebut.
Himpunan variabel asal disusun pada vektor acak X dengan vektor rata-rata μ =
(μ1, μ2, … , μp), matriks kovarians Σ, dan eigen values λ1 ≥ λ2 ≥ ⋯ ≥ λp ≥ 0. Sehingga
komponen utama merupakan kombinasi linier yang berbentuk Y = EX dengan:
𝑌1 𝑒11 … 𝑒1𝑝 𝑋1
⋮
Y = [ ], E = [ ⋮ ⋱ ⋮ ], X = [ ⋮ ]
𝑌𝑝 𝑒𝑝1 … 𝑒𝑝𝑝 𝑋𝑝
Dari bentuk di atas didapat kombinasi linier komponen utama yaitu sebagai berikut:
Maka Var(Yi ) = ei'Σei dan Cov(Yi,Yk ) = ei'Σei di mana i,k = 1, 2, ... , p.
Syarat untuk membentuk komponen utama yang merupakan kombinasi linier dari
variabel acak X agar mempunyai varians maksimum adalah dengan memilih vektor ciri
(eigen vector) yaitu e = (e1, e2, …, ep) sedemikian sehingga Var(Yi) = ei'Σei maksimum
dan ei'ei = 1.
𝜆𝑘
𝑝
∑𝑖=1 𝜆𝑖
Kemudian dapat diketahui pula korelasi dari variabel acak Xk dengan komponen utama Yi
dengan menggunakan rumus berikut:
𝑒𝑖𝑘 √𝜆
𝑖
𝜌𝑦𝑖,𝑥𝑘 =
√𝜎𝑘𝑘
2.CONTOH KASUS
Dari data di atas akan digunakan metode analisis komponen utama untuk mereduksi
data yang berasal dari 4 variabel yang ada menjadi beberapa komponen utama yang paling
berpengaruh dan banyaknya komponen utama tersebut lebih sedikit dari banyaknya jumlah
variabel yang ada, sehingga kedepannya ketika akan dilakukan analisis data secara
multivariate akan menjadi lebih efisien.
Misal :
X1 = Konsentrasi CO2 bulanan dalam bagian per juta
X2 = Konsentrasi CO2 dengan penyesuaian musiman
X3 = Konsentrasi CO2 dengan noise yang dihilangkan
X4 = Konsentrasi CO2 dengan siklus musiman yang dihapus
PENGUJIAN ASUMSI
Sebelumya akan dilakukan pengujian asumsi yaitu uji normalitas multivariat dan uji
homogenitas varians yaitu sebagai berikut.
Hipotesis
Taraf Signifikan
𝛼 = 5%
Statistik Uji
#input data
> setwd("D:/Documents/")
> attach(data)
#asumsi normalitas
> library(MVN)
> summary(data)
X1 X2 X3 X4
$multivariateNormality
$univariateNormality
$Descriptives
Kurtosis
X1 -0.9361822
X2 -1.4117648
X3 -0.7752302
X4 -1.5304532
Kriteria Uji
Tolak H0 jika p-value < 𝛼 Bersarkan hasil output multivariate normality, residu dapat
dikatakan berdistribusi normal apabila p – value Mardia Skewness dan p – value Mardia
Kurtosis < 𝛼. Apabila salah satu di antaranya tidak memenuhi kriteria tersebut, maka
residu dikatakan tidak berdistribusi normal. Hal yang demikian berlaku juga pada hasil
output univariate normality (Shapiro - Wilk) Data dikatakan berdistribusi normal (H0
Diterima ) jika : -1,96 < Skewnees & Kurtosis z-values < +1,96.
Kesimpulan
Taraf Signifikan
𝛼 = 5%
Statistik Uji
> dataCO2=c(X1,X2,X3,X4)
> data2=data.frame(variabel,dataCO2)
> bartlett.test(dataCO2~variabel,data2)
Bartlett test of homogeneity of variances
Kriteria Uji
Kesimpulan
Dari Uji Bartlett pada output software R di atas menghasilkan p-value yang lebih
besar dari pada taraf signifikannya (0.2323 > 0.05) maka H0 diterima, artinya dengan
taraf signifikan 5% pendapat mendukung bahwa ke-4 variabel tersebut memiliki varians
yang homogen (tidak berbeda secara signifikan), sehingga untuk asumsi yang kedua
terpenuhi.
ANALISIS KOMPONEN UTAMA
1. Input data
2. Mengubah data ke dalam vector
3. Mengubah data vektor ke dalam matriks (m x n)
4. Mencari matriks varians kovarians
• Untuk populasi
2 2 2
𝜎11 𝜎12 … 𝜎1𝑝
𝜎2 2
𝜎22 2
… 𝜎2𝑝
Σ = 21
⋮ ⋮ ⋱ ⋮
2 2 2
[𝜎𝑝1 𝜎𝑝2 … 𝜎𝑝𝑝 ]
• Untuk sampel
2 2 2
𝑠11 𝑠12 … 𝑠1𝑝
𝑠2 2
𝑠22 2
… 𝑠2𝑝
∆ = 21
⋮ ⋮ ⋱ ⋮
2 2 2
[𝑠𝑝1 𝑠𝑝2 … 𝑠𝑝𝑝 ]
5. Mencari nilai eigen (𝜆)
𝜆1 0 … 0
0 𝜆2 … ⋮
𝜆= [ ]
⋮ ⋮ ⋱ ⋮
0 … … 𝜆𝑝
6. Mencari vektor eigen (𝑣)
|𝛴 − 𝜆𝐼| = 0
Keterangan :
𝜆 : nilai eigen
𝐼 : matriks identitas
𝛴 : nilai matriks
7. Membuat persamaan kombinasi linear dari variabel-variabel baru
𝑌=𝑧𝑥𝑣
𝜆𝑘
𝜏𝑘 = 𝑝
∑𝑖=1 𝜆𝑖
10. Mencari nilai korelasi masing-masing antara variabel baru dan komponen utama
𝑒𝑖𝑘 √𝜆
𝑖
𝜌𝑦𝑖,𝑥𝑘 =
√𝜎𝑘𝑘
• Untuk sampel
> attach(data)
> str(data)
> head(data)
X1 X2 X3 X4
Standarisasi Data
Standarisasi data bertujuan untuk menyamakan satuan, jadi nilai standar tidak lagi
tergantung pada satuan pengukuran melainkan menjadi nilai baku.
> data_standardized<-scale(x=data)
> data_standardized
X1 X2 X3 X4
⋮ ⋮ ⋮ ⋮ ⋮
attr(,"scaled:center")
X1 X2 X3 X4
attr(,"scaled:scale")
X1 X2 X3 X4
> data_covariance
X1 X2 X3 X4
> data_eigen
eigen() decomposition
$values
• Value yaitu nilai eigen yang sudah diurutkan dari yang tertinggi ke yang
terendah. Nilai ini bisa digunakan untuk melihat seberapa besar varians yang
dapat dijelaskan oleh komponen utama.
• Vectors yaitu vektor eigen. Nilai ini merupakan nilai loadings yang digunakan
untuk membuat persamaan komponen utama.
> summary(fit_pca)
Importance of components:
Interpretasi
> loadings(fit_pca)
Loadings:
Interpretasi
Nilai-nilai loading yang ditampilkan pada hasil di atas adalah nilai vektor
eigen dari matriks kovarians,Sehingga Fungsi komponen utamanya adalah sebagai
berikut :
Dari scree plot tersebut terlihat bahwa kurva mulai landai pada titik comp 3
artinya bahwa dengan dua komponen saja sudah mencukupi untuk mewakili keempat
variabel tersebut.
+ data=as.matrix(x)
+ S = cov(data)
+ if(standardize == TRUE){
+ S = cor(data)
+ }
+ eigen_val = eigen(S)$values
+ eigen_vec = eigen(S)$vector
+ n = length(eigen_val)
+ prop = c()
+ for (i in (1:n)){
+ prop[i] = (eigen_val[i])/sum(eigen_val)
+ }
+ q = length(prop)
+ propcum = c()
+ for (i in 1:q){
+ propcum[i]=sum(prop[1:i])
+ }
+ p = nrow(eigen_vec)
+ corr = matrix(0,p,p)
+ for (i in (1:p)){
+ for (j in (1:p)){
+ corr[i,j] = (eigen_vec[i,j]*sqrt(eigen_val[i]))/S[j,j]
+ }
+ }
+ print(hasil)
+ }
> PCA(data_standardized)
$`Matriks Varkov/Korelasi`
X1 X2 X3 X4
$`Eigen Value`
$`Eigen Vector`
Output
1. Matrix Korelasi
Matrix korelasi yang dihasilkan dari data pada terlihat bahwa hubungan/korelasi
yang memiliki tingkat keeratan cukup erat adalah :
• Variabel Konsentrasi CO2 bulanan dalam bagian per juta (X1) dengan
Variabel Konsentrasi CO2 dengan noise yang dihilangkan (X3), dengan nilai
korelasi sebesar 0.9915288
• Variabel Konsentrasi CO2 dengan penyesuaian musiman (X2) dengan
Variabel Konsentrasi CO2 dengan siklus musiman yang dihapus (X4),
dengan nilai korelasi sebesar 0.9866080
• Variabel Konsentrasi CO2 dengan noise yang dihilangkan (X3) dengan
Variabel Konsentrasi CO2 bulanan dalam bagian per juta (X1), dengan nilai
korelasi sebesar 0.9915288
• Variabel Konsentrasi CO2 dengan siklus musiman yang dihapus (X4) dengan
Variabel Konsentrasi CO2 dengan penyesuaian musiman (X2), dengan nilai
korelasi sebesar 0.9866080
2. Fungsi Komponen Utama
Karena data pada data memiliki 4 variabel, maka akan menghasilkan 4 nilai
eigen dan 4 vektor eigen dengan dimensi 4×1, dari vector eigen yang dihasilkan
maka akan terbentuk 4 fungsi komponen utama yaitu sebagai berikut :
AKU1 = 0.504 X1 + 0.496 X2 + 0.497 X3 + 0.503 X4
PCA Score
> #PCA SCORE
> baku=function(X){
+ x=as.matrix(X)
+ n=nrow(x)
+ p=ncol(x)
+ a=matrix(0,n,p)
+ for (j in (1:p)) {
+ for (i in (1:n)) {
+ a[i,j]=(x[i,j]-mean(x[,j]))/sd(x[,j])
+ }
+ }
+ print(a)
+ }
> baku(data_standardized)