Disusun Oleh :
Kelas : A
UNIVERSITAS PADJADJARAN
2023
I. DASAR TEORI
A. Definisi
Analisis komponen utama atau disebut juga Principal Component Analysis
(PCA) adalah analisis multivariat yang mengubah variabel asli yang saling berkorelasi
menjadi variabel baru yang tidak berkorelasi satu sama lain, mengurangi jumlah
variabel sehingga memiliki dimensi yang lebih sedikit tetapi dapat menjelaskan
dengan sebaik-baiknya dari keragaman variabel asli. Pereduksian (penyederhanaan)
dimensi dilakukan dengan kriteria persentase keragaman data yang diterangkan oleh
beberapa komponen utama pertama. Apabila beberapa komponen utama pertama telah
menerangkan lebih dari 80% keragaman data asli, maka analisis cukup dilakukan
sampai dengan komponen utama tersebut.
Apabila komponen utama diturunkan dari populasi multivariat normal dengan
random vektor X = (X1, X2,… , Xp) dan vektor rata-rata μ = (μ1, μ2, … , μp) dan
matriks kovarians Σ dengan akar ciri (eigenvalue) yaitu λ1 ≥ λ2 ≥ ⋯ ≥ λp ≥ 0 didapat
kombinasi linier komponen utama yaitu sebagai berikut.
C. Uji Asumsi
Sebelum melakukan analisis komponen utama, ada beberapa asumsi yang harus
terpenuhi agar proses reduksi data mencapai hasil yang maksimal, yaitu data harus
berdistribusi normal multivariat dan semua variabel yang terdapat pada data memiliki
varians yang homogen. Berikut untuk penjelasan lebih lengkapnya:
1. Asumsi Normalitas Data Multivariat
Hal ini harus terpenuhi sebelum melakukan analisis komponen utama.
Normalitas data multivariat dapat dibuktikan dengan beberapa uji asumsi
normalitas data multivariat, yaitu:
a. Secara Visual
Pemeriksaan normalitas data multivariat secara visual dapat dilakukan
menggunakan plot antara jarak Mahalanobis dengan Chi-square yang
diperoleh dari tiap data. Langkah-langkah pengujian normalitas data
multivariat menggunakan jarak Mahalanobis:
1. Hitung nilai jarak Mahalanobis
2 𝑇 −1
𝑑𝑗 = (𝑥𝑖 − 𝑥) 𝑆 (𝑥𝑖 − 𝑥) ; 𝑗 = 1, 2, 3,..., 𝑛
2
2. Urutkan 𝑑𝑗 dari terkecil ke terbesar
2 2 2
𝑑(1) ≤ 𝑑(2) ≤ … ≤ 𝑑(𝑛)
2
3. Hitung nilai 𝑥 𝑗−0,5 dengan j=1,2,...,n dan p menyatakan banyak
𝑝( 𝑛
)
variabel
4. Susun plot dari pasangan 𝑑𝑗 , 𝑥 ( 2 2
𝑝(
𝑗−0,5
𝑛
)
)
Jika hasil penyajian Q-Q Plot jarak Mahalanobis menunjukkan bahwa titik-titik
data menyebar di sekitar garis lurus, maka dapat disimpulkan bahwa data
berdistribusi normal secara multivariat.
b. Secara Statistik
Pemeriksaan normalitas pada data multivariat secara statistik bisa
menggunakan Mardia’s Test dan Shapiro Wilks Test.
- Mardia’s Test
menggunakan nilai skewness dan kurtosis untuk menentukan apakah
data berdistribusi normal atau tidak. Pada pengujian asumsi
menggunakan Mardia’s Test baik kurtosis maupun skewness harus
secara signifikan menunjukkan bahwa data berdistribusi normal
multivariat. Adapun hipotesis yang diuji pada Mardia’s Test adalah
sebagai berikut:
H0 : data berdistribusi normal multivariat
H1 : data tidak berdistribusi normal multivariat
𝑘 2
1 ⎡ ⎤
𝑇3 = ⎢ ∑ 𝑎 (𝑥 − 𝑥𝑖)⎥
𝐷 ⎢𝑖=1 𝑖 𝑛−1+1 ⎥
⎣ ⎦
5. Lihat nilai dari tabel shapiro wilk untuk taraf signifikansi yang
dipilih
6. Jika statistik uji yang dihitung bernilai lebih dari nilai yang
diperoleh dari tabel, maka diputuskan untuk menolak H0.
2. Asumsi Homogenitas Matriks Kovarians
Uji Bartlett digunakan untuk menguji apakah sampel berasal dari populasi
dengan varians yang sama. Uji bartlett digunakan untuk menguji
sampel/kelompok yang lebih dari 2. Varians yang sama di seluruh sampel
disebut homoscedasticity atau homogenitas varians.
Langkah-langkah dalam uji bartlett:
1. Merumuskan Hipotesis dalam uji bartlett
𝐻0 : 𝑠1 = 𝑠2 = 𝑠3 = ... = 𝑠𝑛, matriks kovarians grup adalah sama
Dimana:
Keterangan:
b = nilai chi square hitung
Sp = varians pool / gabungan
n = banyaknya sampel
N = jumlah total sampel
k = banyaknya kelompok data
5. Membuat keputusan dengan kriteria seperti berikut ini:
Ho ditolak, jika χ2 hitung < χ2 tabel
Ho diterima, jika χ2 hitung ≥ χ2 tabel
II. DATA
Berikut ini data mengenai Proporsi Penduduk Berumur 10 Tahun ke Atas yang
Membaca Selama Seminggu Terakhir di Daerah Perkotaan di Indonesia Tahun 2012
yang meliputi lima jenis bacaan yaitu surat kabar, majalah/tabloid, buku cerita,
pelajaran sekolah, dan pengetahuan. Data ini merupakan data sekunder yang diperoleh
dari website www.bps.go.id.
B. Uji Asumsi
1. Asumsi Normalitas Data Multivariat
Cara Visual
Dengan menggunakan chi-square plot, diperoleh plot sebagai berikut.
Interpretasi Chi-Square Plot:
Berdasarkan plot di atas, terlihat bahwa data cenderung menyebar di sekitar garis
lurus sehingga dapat dikatakan bahwa variabel dependen dari data yang digunakan
berdistribusi normal multivariat.
Cara Statistik
● Hipotesis
H0 : data sampel yang berasal dari populasi berdistribusi normal multivariat
H1 : data sampel yang berasal dari populasi tidak berdistribusi normal multivariat
● Taraf Signifikansi
α = 0,05
● Statistik Uji
Uji Mardia
● Kriteria Uji
Tolak H0 jika p-value < α, dan terima dalam hal lainnya.
● Keputusan
Berdasarkan hasil perhitungan uji Mardia menggunakan software R, diperoleh nilai
p-value pada Mardia Kurtosis adalah sebesar 0.577432271095171 yang artinya
p-value > α = 0,05 maka H0 diterima sedangkan nilai p-value pada Mardia Skewness
adalah sebesar 0.0805492753228505 yang artinya p-value > α = 0,05 maka H0
diterima.
● Kesimpulan
Dengan taraf signifikansi 5%, dapat disimpulkan bahwa data Proporsi Penduduk
Berumur 10 Tahun ke Atas yang Membaca Selama Seminggu Terakhir di Daerah
Perkotaan di Indonesia Tahun 2012 berdistribusi normal multivariat.
2. Asumsi Homogenitas
● Hipotesis
H0 : 𝑠1 = 𝑠2 = 𝑠3 = 𝑠4 (varians data homogen)
H1 : paling sedikit ada satu 𝑠𝑘 yang berbeda (varians data tidak homogen)
● Taraf Signifikansi
α = 0,05
● Statistik Uji
Uji Bartlett
● Kriteria Uji
Tolak H0 jika p-value < α, dan terima dalam hal lainnya.
● Keputusan
Berdasarkan hasil perhitungan Uji Bartlett menggunakan software R, diperoleh nilai
p-value adalah sebesar 4.536e-16 yang artinya p-value < α = 0,05 maka H0 ditolak.
● Kesimpulan
Dengan taraf signifikansi 5%, dapat disimpulkan bahwa data Proporsi Penduduk
Berumur 10 Tahun ke Atas yang Membaca Selama Seminggu Terakhir di Daerah
Perkotaan di Indonesia Tahun 2012 memiliki matriks varians kovarians yang tidak
homogen atau dapat dikatakan varians datanya non homogen.
Proporsi
0,5027 0,8455 0,9247 0,9762 1,000
kumulatif varians
Komponen utama yang diambil adalah komponen utama yang mencakup minimal
80% varians pada data. Berdasarkan tabel di atas diperoleh bahwa komponen utama
kedua dapat menjelaskan 84,55% informasi dari kelima variabel pada data Proporsi
Penduduk Berumur 10 Tahun ke Atas yang Membaca Selama Seminggu Terakhir di
Daerah Perkotaan di Indonesia Tahun 2012.
2. Nilai Eigen
Berdasarkan hasil pengujian asumsi homogenitas diperoleh hasil bahwa data Proporsi
Penduduk Berumur 10 Tahun ke Atas yang Membaca Selama Seminggu Terakhir di
Daerah Perkotaan di Indonesia Tahun 2012 memiliki varians data yang tidak
homogen. Oleh karena itu, matriks yang digunakan dalam perhitungan analisis
komponen utama dengan melihat nilai eigen adalah matriks korelasi. Berikut
merupakan matriks korelasi dari data yang digunakan:
Berdasarkan scree plot di atas, terlihat bahwa pada titik komponen utama kedua
mengalami penurunan yang tajam sebelum titik tersebut dan disusul penurunan yang
tidak tajam setelah titik tersebut.
IV. KESIMPULAN
Berdasarkan perhitungan yang telah dilakukan,diperoleh beberapa hal yaitu:
1. Pada pengujian asumsi normalitas multivariat, dapat disimpulkan bahwa data
Proporsi Penduduk Berumur 10 Tahun ke Atas yang Membaca Selama Seminggu
Terakhir di Daerah Perkotaan di Indonesia Tahun 2012 berdistribusi normal
multivariat.
2. Pada pengujian asumsi homogenitas, dapat disimpulkan bahwa data Proporsi
Penduduk Berumur 10 Tahun ke Atas yang Membaca Selama Seminggu Terakhir
di Daerah Perkotaan di Indonesia Tahun 2012 memiliki varians yang tidak
homogen.
3. Pada perhitungan analisis komponen utama baik menggunakan proporsi
kumulatif varians, nilai eigen maupun scree plot, dapat disimpulkan bahwa
komponen utama kedua sudah cukup menjelaskan 84,55% informasi dari kelima
variabel pada data Proporsi Penduduk Berumur 10 Tahun ke Atas yang Membaca
Selama Seminggu Terakhir di Daerah Perkotaan di Indonesia Tahun 2012.
4. Berdasarkan hasil perhitungan analisis komponen utama, diperoleh model yang
dapat merepresentasikan kelima variabel pada data Proporsi Penduduk Berumur
10 Tahun ke Atas yang Membaca Selama Seminggu Terakhir di Daerah
Perkotaan di Indonesia Tahun 2012 sebagai berikut:
𝑌1 = − 0, 3897494𝑋1 − 0, 4315374𝑋2 − 0, 5321264𝑋3 − 0, 3912127𝑋4 − 0, 4750421𝑋5
𝑌2 = 0, 51473893𝑋1 + 0, 46343994𝑋2 + 0, 06110884𝑋3 − 0, 55973855𝑋4 − 0. 45080564𝑋5
DAFTAR PUSTAKA
R-Stats. (2019, March 14). Analisis Komponen Utama (principal component analysis).
Rumus Statistik. Retrieved March 7, 2023, from
https://www.rumusstatistik.com/2015/03/analisis-komponen-utama-principal.html
Mariana, M. (1970, January 1). Analisis Komponen utama. Matematika dan Pembelajaran.
Retrieved March 7, 2023, from
https://www.neliti.com/id/publications/293541/analisis-komponen-utama
Ceria, S. (2014, April 20). Uji Bartlett Untuk Uji Kesamaan Ragam/Varians(homogenitas).
Statistik Ceria. Retrieved March 7, 2023, from
https://statistikceria.blogspot.com/2013/12/uji-bartlett-untuk-uji-kesamaan-ragam-varians-ho
mogenitas.html
LAMPIRAN
data: X
MVW = 0.97486, p-value = 0.8599
$univariateNormality
Test Variable Statistic p value Normality
1 Anderson-Darling Surat.Kabar 0.3035 0.5532 YES
2 Anderson-Darling Majalah.Tabloid 0.1874 0.8961 YES
3 Anderson-Darling Buku.Cerita 0.1710 0.9244 YES
4 Anderson-Darling Pelajaran.Sekolah 0.3079 0.5424 YES
5 Anderson-Darling Pengetahuan 0.6502 0.0819 YES
$Descriptives
n Mean Std.Dev Median Min Max 25th 75th Skew
Surat.Kabar 33 26.070000 7.429262 24.67 11.52 43.59 21.72 29.89 0.2484053
Majalah.Tabloid 33 10.844545 2.837373 10.55 5.04 17.89 9.09 13.02 0.2636266
Buku.Cerita 33 6.271212 1.518002 6.41 3.17 9.97 5.50 7.12 0.0942882
Pelajaran.Sekolah 33 24.326970 3.471590 24.28 16.90 30.84 21.47 26.79 0.0387182
Pengetahuan 33 18.830909 3.838344 18.63 13.25 25.19 15.76 20.81 0.2416169
Kurtosis
Surat.Kabar -0.5034103
Majalah.Tabloid -0.3068540
Buku.Cerita -0.1875302
Pelajaran.Sekolah -0.8852665
Pengetahuan -1.2106252
data: data
Bartlett's K-squared = 78.037, df = 4, p-value = 4.536e-16
> #===== Standardisasi Data
> # untuk mengubah data ke skala yang sebanding
> # jika ada perbedaan besar antara rentang variabel
> X <- as.matrix(scale(data))
> #===== Matriks Varians Kovarians dan Matriks Korelasi
> # untuk memahami hubungan antar variabel
> ## matriks korelasi
> b=cor(X)
> b
Surat.Kabar Majalah.Tabloid Buku.Cerita Pelajaran.Sekolah
Surat.Kabar 1.00000000 0.738298525 0.4754255 -0.072536676
Majalah.Tabloid 0.73829853 1.000000000 0.5278499 0.006450235
Buku.Cerita 0.47542551 0.527849888 1.0000000 0.389874430
Pelajaran.Sekolah -0.07253668 0.006450235 0.3898744 1.000000000
Pengetahuan 0.09817022 0.172473215 0.5046154 0.863265059
Pengetahuan
Surat.Kabar 0.09817022
Majalah.Tabloid 0.17247322
Buku.Cerita 0.50461542
Pelajaran.Sekolah 0.86326506
Pengetahuan 1.00000000
> #===== Nilai dan Vektor Eigen
> ## gunakan matriks korelasi jika asumsi varians homogen tidak terpenuhi
> eigen(b)
eigen() decomposition
$values
[1] 2.5134022 1.7140622 0.3961091 0.2576191 0.1188074
$vectors
[,1] [,2] [,3] [,4] [,5]
[1,] -0.3897494 0.51473893 -0.3249065 0.68690595 -0.07573108
[2,] -0.4315374 0.46343994 -0.2671723 -0.72440301 -0.05346146
[3,] -0.5321264 0.06110884 0.8425890 0.04753245 -0.02986004
[4,] -0.3912127 -0.55973855 -0.2316687 0.01152157 -0.69270648
[5,] -0.4750421 -0.45080564 -0.2437787 0.03175544 0.71461373
Standard deviations:
Comp.1 Comp.2 Comp.3 Comp.4 Comp.5
1.5853713 1.3092220 0.6293720 0.5075620 0.3446845
Importance of components:
Comp.1 Comp.2 Comp.3 Comp.4 Comp.5
Standard deviation 1.5853713 1.3092220 0.62937196 0.50756196 0.34468446
Proportion of Variance 0.5026804 0.3428124 0.07922181 0.05152383 0.02376148
Cumulative Proportion 0.5026804 0.8454929 0.92471470 0.97623852 1.00000000
> ## membentuk plot
> plot(fit_pca,type="barplot",main="Bar Plot",col='cadetblue')
> plot(fit_pca,type="lines",main="Scree Plot",col='red')
> ## menampilkan nilai (score) komponen utama
> fit_pca$scores
Comp.1 Comp.2 Comp.3 Comp.4 Comp.5
[1,] 2.7851280 -0.117213860 0.17667143 0.59788187 0.31690611
[2,] -1.3858628 -1.200438275 1.07351890 0.55450726 0.07912508
[3,] 0.2880711 -0.422435044 -0.53210636 -0.12484582 -0.06935380
[4,] 0.2481368 0.115599051 0.58455080 0.25954147 -0.02989797
[5,] 2.8503035 2.573553921 -0.95027179 0.47436377 -0.76454701
[6,] -0.3751393 -0.190788094 -0.15772532 0.62529925 -0.41385922
[7,] -0.2048403 1.196093552 0.40247129 0.22351132 0.97470335
[8,] -0.9990146 2.520665315 0.67833564 0.21624119 0.04927609
[9,] 2.1964627 -1.061698268 0.77266912 0.77163291 0.38072671
[10,] -0.8100728 0.257713234 -0.70507618 0.17565288 0.20313607
[11,] 0.2568554 3.610638595 0.18054660 -0.98149826 -0.40784578
[12,] -2.5515788 0.017669035 -0.58763731 -0.27962736 0.14599038
[13,] -1.1515255 0.081526428 -0.13927109 -0.55258081 0.02581839
[14,] -2.2287008 0.150568334 -0.42081804 -0.51559557 0.32320867
[15,] 1.2581115 1.973233135 0.17693202 0.05052699 0.15798992
[16,] -1.5037671 0.459478391 -0.39366464 -0.16825247 -0.02036310
[17,] -1.8571473 0.644246517 -0.13318482 0.27485497 -0.22626127
[18,] -1.6375539 -1.644279453 -1.17140423 -0.17678866 -0.02895844
[19,] 1.4496507 -1.843804224 -0.62615423 0.32395050 0.05458985
[20,] 0.3807267 -0.080521678 -0.16623427 -0.55355080 0.29696107
[21,] -0.7978431 0.705622425 -0.09738395 0.50932232 0.45072208
[22,] -0.8836227 -0.080693186 -0.75169479 0.61824726 0.18637479
[23,] 1.4439177 1.015450548 -0.12083897 0.17150025 -0.15456877
[24,] -2.0231952 0.006370174 1.21353394 0.83107552 -0.51636813
[25,] -3.1831081 -0.946941890 -0.09698657 0.28806497 -0.56857207
[26,] -0.5746259 -0.108724634 1.38995298 -1.16170736 0.20203249
[27,] 1.1180345 0.061157193 -0.30466061 -0.49320411 0.11634502
[28,] 1.7981519 -0.827436249 0.91097596 -0.76405488 -0.31945654
[29,] 0.5410092 -1.490577610 0.81890475 0.04038153 -0.37705673
[30,] 0.8657145 -1.985094258 -0.18530141 -0.68266940 -0.07585606
[31,] 1.0956251 -0.176010839 -0.45631376 -0.00911788 0.43186913
[32,] 0.7934177 -2.346929348 0.07009442 -0.36173015 -0.31258674
[33,] 2.7982813 -0.865998938 -0.45242953 -0.18133272 -0.11022357
> ##### FUNCTION
> PCA=function(x, standardize=FALSE){
+ 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]
+ }
+ }
+
+ plot(eigen_val, main="Scree Plot", type="o")
+ hasil = list("Matriks Varkov/Korelasi"=S, "Eigen Value"=eigen_val,
+ "Eigen Vector"=eigen_vec, "Proporsi Komponen"=prop,
+ "Proporsi Kumulatif Komponen"=propcum, "Matriks Korelasi Y dan
X"=corr)
+ print(hasil)
+ }
> PCA(X)
$`Matriks Varkov/Korelasi`
Surat.Kabar Majalah.Tabloid Buku.Cerita Pelajaran.Sekolah
Surat.Kabar 1.00000000 0.738298525 0.4754255 -0.072536676
Majalah.Tabloid 0.73829853 1.000000000 0.5278499 0.006450235
Buku.Cerita 0.47542551 0.527849888 1.0000000 0.389874430
Pelajaran.Sekolah -0.07253668 0.006450235 0.3898744 1.000000000
Pengetahuan 0.09817022 0.172473215 0.5046154 0.863265059
Pengetahuan
Surat.Kabar 0.09817022
Majalah.Tabloid 0.17247322
Buku.Cerita 0.50461542
Pelajaran.Sekolah 0.86326506
Pengetahuan 1.00000000
$`Eigen Value`
[1] 2.5134022 1.7140622 0.3961091 0.2576191 0.1188074
$`Eigen Vector`
[,1] [,2] [,3] [,4] [,5]
[1,] -0.3897494 0.51473893 -0.3249065 0.68690595 -0.07573108
[2,] -0.4315374 0.46343994 -0.2671723 -0.72440301 -0.05346146
[3,] -0.5321264 0.06110884 0.8425890 0.04753245 -0.02986004
[4,] -0.3912127 -0.55973855 -0.2316687 0.01152157 -0.69270648
[5,] -0.4750421 -0.45080564 -0.2437787 0.03175544 0.71461373
$`Proporsi Komponen`
[1] 0.50268044 0.34281244 0.07922181 0.05152383 0.02376148