“Analisis Faktor”
Diajukan untuk Memenuhi Tugas Mata Kuliah Analisis Multivariat II
Disusun oleh :
Kelas : A
Aslab :
Helni Nurhidayat
Analisis faktor merupakan metode analisis multivariat yang didasarkan pada korelasi antar
variabel. Analisis faktor termasuk salah satu teknik statistika yang dapat digunakan untuk
memberikan deskripsi yang relatif sederhana melalui reduksi jumlah variabel yang disebut
faktor. Analisis faktor dipergunakan untuk mereduksi data atau meringkas, dari variabel lama
yang banyak diubah menjadi sedikit variabel baru yang disebut faktor, dan masih memuat
sebagian besar informasi yang terkandung dalam variabel asli (Supranto, 2004).
Variabel latent atau variabel untuk data-data kualitatif harus melalui pengujian kelayakan dan
keabsahan terlebih dahulu (validitas dan realibilitas) sebelum dikelompokkan menjadi variabel
yang akan di analisis faktor.
Analisis Faktor dapat dirumuskan dalam model persamaan linier Misalkan vektor
acak X dengan p komponen memiliki rata-rata μ dan matriks covariance Σ. Maka bentuk model
persamaan faktornya adalah:
Di mana:
= rata-rata variabel asal ke i
= spesifik faktor ke i
= Common faktor ke j
= disebut loading dari peubah asal ke I pada faktor j
Asumsi mendasar yang perlu diperhatikan dalam analisis faktor adalah variable-variabel yang
dianalisis memiliki keterkaitan atau saling berhubungan (multikolinearitas) karena analisis faktor
berusaha untuk mencari common dimension (kesamaan dimensi) yang mendasari variable-
variabel tersebut. Asumsi lainnya yang perlu dipenuhi antara lain:
Proses yang perlu dilakukan dalam analisis faktor adalah sebagai berikut:
1. Mengidentifikasikan struktur.
2. Menduga parameter (faktor loading dan sistematik varians).
Metode Komponen Utama
Metode Kemungkinan Maksimum
Metode Kuadrat Terkecil
3. Menentukan jumlah faktor (dapat dilakukan dengan metode scree plot, eigen values,
proporsi varians).
4. Rotasi faktor (ortogonal: varimax, quartimax, equimax; oblique: oblimax, quartimin,
oblimin).
5. Interpretasi faktor (eigen values, explained variances, factor scores, koefisien faktor).
2.CONTOH KASUS
Pada Tabel 2.1. di atas menunujukan data kualitas air sungai di India.Data tersebut terdiri
dari 6 variabel,yaitu Temperatur (X1), DO (X2), PH (X3), Conductivity (X4), BOD (X5), Nitrate
(X6) Setap variabel kelompok merupakan nilai rata-rata yang diukur pada periode waktu
tertentu.Terdapat sampel sebanyak 33 unit observasi untuk masing-masing variabelnya.
Dari data di atas akan digunakan metode analisis faktor untuk mereduksi data yang
berasal dari 6 variabel yang ada menjadi beberapa faktor yang paling berpengaruh dan
banyaknya faktor tersebut lebih sedikit dari banyaknya jumlah variabel yang ada, sehingga
kedepannya ketika akan dilakukan analisis data secara multivariate akan menjadi lebih efisien.
Misal :
X1 = Temperatur
X2 = DO
X3 = Ph
X4 = Conductivity
X5 = BOD
X6 = Nitrat
PENGUJIAN ASUMSI
Sebelumya akan dilakukan pengujian asumsi yaitu uji normalitas multivariat dan uji
homogenitas varians yaitu sebagai berikut.
Hipotesis
Data pengamatan air sungai di India berdistribusi tidak berdistribusi normal multivariat
Taraf Signifikan
Statistik Uji
> setwd("D:/Lectures/Anreg/")
> library(MVN)
> summary(data)
X1 X2 X3 X4
X5 X6 X7 X8
1st Qu.:1.500 1st Qu.:0.700 1st Qu.: 444 1st Qu.: 1377
$multivariateNormality
$univariateNormality
Skew Kurtosis
X1 -0.4818105 -0.8460226
X2 -0.1912043 -0.6362930
X3 -0.5072525 -1.2864288
X4 3.0601998 10.9337782
X5 0.5922830 -0.7899570
X6 0.3598010 -1.0872511
X7 1.9652208 2.9550235
X8 1.6192945 1.5383493
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 ( Diterima ) jika
Kesimpulan
Multikolinieritas adalah tingkat hubungan linier diantara variabel eksplanatori dalam suatu
persamaan regresi, dengan langkah – langkah pengujian adalah sebagai berikut:
Hipotesis
H0 : Ke-6 variabel pada data tidak berkorelasi antar variabel lainnya (non-
multikolinearitas)
Taraf Signifikan
α = 5%
Statistik Uji
Perhitungan tersebut akan dilakukan menggunakan Software R, yaitu sebagai berikut :
> #asumsi multikolinearitas
> diag(solve(cor(data)))
X1 X2 X3 X4 X5 X6
2.634482 1.266827 2.529239 1.254390 3.215215 1.537583
Kriteria Uji
VIF atau Variance Inflation Factor menggambarkan kenaikan varians taksiran koefisien
regresi jika variabel eksplanatori tidak saling berkorelasi. Apabila nilai VIF lebih dari 5 atau
10, maka taksiran parameter kurang baik, terjadi multikolinearitas. VIF dapat dihitung
dengan
Kesimpulan
Dari hasil di atas tidak terdapat nilai VIF yang lebih dari 5 atau 10. Maka diterima,
sehingga dengan taraf signifikan pendapat mendukung bahwa data tersebut tidak
teridentifikasi multikolinearitas. Maka asumsi analisis faktor yang kedua terpenuhi.
Uji Homogenitas Varians
Hipotesis
Ke-5 variabel pada data memiliki varians yang heterogen (berbeda secara
signifikan)
Taraf Signifikan
> setwd("D:/Documents/")
> attach(data)
> variabel=as.factor(rep(c("X1","X2","X3","X4","X5","X6"),each=33))
> water=c(X1,X2,X3,X4,X5,X6)
> data2=data.frame(variabel,water)
> bartlett.test(water~variabel,data2)
Dari Uji Bartlett pada output software R di atas menghasilkan p-value yang lebih besar dari
pada taraf signifikannya maka ditolak, artinya dengan taraf signifikan
5% pendapat mendukung bahwa ke-6 variabel tersebut memiliki varians yang heterogen
(berbeda secara signifikan), sehingga untuk asumsi yang ketiga tidak terpenuhi. Tetapi untuk
kasus homogenits varians diasumsikan terpenuhi agar analisis faktor dapat dilakukan.
Dari ketiga uji diatas, diperoleh bahwa seluruh hasil ujinya tidak memenuhi kriteria asumsi
untuk analisis faktor. Namun karena akan tetap diasumsikan terpenuhi, maka setelah
melakukan pengujian asumsi (normalitas, multikolinieritas dan homogenitas), akan dilakukan
analisis faktor sebagai berikut.
LANGKAH PENGERJAAN MANUAL ANALISIS FAKTOR
Variabel F dan ε saling bebas antara satu sama lain, dan
2. Identifikasi struktur dari data
Langkah ini dilakukan untuk mengetahui metode analisis apa yang harus digunakan, antara
lain:
Untuk menentukan jumlah faktor, terdapat beberapa cara yang bisa dilakukan, antara lain:
Tujuan dari langkah ini adalah untuk menyederhanakan struktur faktor hingga parsimoni,
sehingga lebih mudah diinterpretasikan peneliti. Rotasi faktor perlu dilakukan jika ekstraksi
faktor belum memberikan output berupa komponen faktor utama yang jelas. Terdapat dua
metode rotasi faktor, antara lain:
Orthogonal, dan
Oblique rotation.
6. Interpretasikan faktor yang telah diperoleh.
ANALISIS FAKTOR
Karena asumsi normalitas, asumsi multikolinieritas, dan asumsi homogenitas ketiganya sama-
sama terpenuhi maka analisis komponen utama dapat dilanjutkan melalui langkah-langkah
sebagai berikut :
> setwd("D:/Lectures/Anreg/")
> str(data)
$ X1: num 26.5 27.4 28.3 27 27.3 26.5 26.5 26.4 27.1 26.4 ...
$ X2: num 7.4 7.4 6.9 6.7 6 6.7 6.3 6.1 6.3 6.9 ...
$ X4: int 304 353 312 315 323 319 314 322 368 1900 ...
$ X5: num 4.2 3.3 2.8 3.4 3.1 4.2 3.6 3.2 3.4 3.7 ...
$ X6: num 0.8 0.7 0.8 0.9 0.7 0.7 0.7 0.7 0.6 0.8 ...
> head(data)
X1 X2 X3 X4 X5 X6
+ data=as.matrix(x)
+ if(standardize == TRUE){
+ data = scale(data)
+ }
+ S = cov(data)
+ A = eigen(S)$values
+ V = eigen(S)$vector
+ trace_S=sum(diag(S))
+ prop=A/trace_S
+ q = length(prop)
+ propcum = c()
+ for (i in 1:q){
+ propcum[i]=sum(prop[1:i])
+ }
+ L=V%*%sqrt(diag(A,length(A),length(A)))
+ miu=colMeans(data)
+ n=nrow(data)
+ p=ncol(data)
+ Xc=matrix(0,n,p)
+ for (i in (1:n)){
+ for (j in (1:p)){
+ Xc[i,j]=data[i,j]-miu[j]
+ }
+ }
+ F=Xc%*%solve(S)%*%L
+ print(hasil)
+ }
> FactorAnalysis(data,standardize = T)
$`Matriks Varkov/Korelasi`
X1 X2 X3 X4 X5 X6
$`Eigen Value`
$`Proporsi Faktor`
$`Loading Factor`
$`Factor Score`
Output
a. Matrix Korelasi
Matrix korelasi yang dihasilkan dari data pada terlihat bahwa hubungan/korelasi yang memiliki
tingkat keeratan cukup erat adalah :
Variabel Temperatur (X1) dengan Variabel Conductivity (X4), dengan nilai korelasi sebesar
0.2408
Variabel DO (X2) dengan Variabel Nitrat (X6), dengan nilai korelasi sebesar 0.06713
Variabel pH (X3) dengan Variabe BOD (X5), dengan nilai korelasi sebesar 0.632
Variabel Conductivity (X4) dengan Variabel pH (X3), dengan nilai korelasi sebesar 0.377
Variabel BOD (X5) dengan Variabel DO (X2), dengan nilai korelasi sebesar 0.632
Variabel Nitrat (X6) dengan Variabel BOD (X5), dengan nilai korelasi sebesar 0.079
Karena data pada data memiliki 6 variabel, maka akan menghasilkan 6 nilai eigen dan 6 vektor
eigen dengan dimensi 6×1, dari vector eigen yang dihasilkan maka akan terbentuk 6 fungsi
komponen utama yaitu sebagai berikut :
c. Kumulatif Proporsi Pengaruh Komponen Utama terhadap Data
Proporsi varians kumulatif Komponen pertama dapat menjelaskan 33% total varians dan bila
ditambahkan komponen kedua menjadi 64% dan bila ditambahkan komponen ketiga menjadi
80%, artinya kita cukup mengambil tiga komponen saja yaitu komponen pertama, kedua dan
ketiga. Dengan tiga komponen utama saja sudah mencukupi untuk mewakili keenam variabel
tersebut. Ketiga fungsi komponen utama yang dipakai tersebut adalah sebagai berikut :
d. Banyaknya Faktor yang Terbentuk
Untuk menentukan berapa jumlah faktor dan faktor mana saja yang akan digunakan dalam
perhitungan faktor skor, dalam kasus ini, dilihat dari nilai eigen yang dimiliki. Jika nilai eigen
lebih besar atau sama dengan satu (nilai eigen ≥ 1), maka faktor dengan nilai eigen tersebut
dimasukkan ke dalam model perhitungan faktor skor. Faktor pertama dan kedua memiliki nilai
eigen lebih besar dari 1 (nilai eigen ≥ 1), maka faktor tersebut yang dihitung untuk mendapatkan
faktor skor yang diperlukan. Karena dirasa sudah mencukupi dan menggambarkan keseluruhan
kebutuhan informasi/ke-6 variabel yang ada untuk analisis. Dengan Loading Faktor sebagai
berikut.
[X1] [X2] [X3] [X4] [X5] [X6]
[L1] -0.1690603 0.88838366 -0.17144615 0.1440994 -0.29531121 -0.2117213606
[L2] 0.5456843 0.23283486 0.65318423 -0.4491089 -0.13231234 -0.0464921537
3. Analisis Faktor dengan Syntax Manual
> library(nFactors)
> cor=cor(data)
> cov=cov(data)
> ev<-eigen(cor)
> ap<-parallel(subject=150,var=5,cent=.05)
> nS<-nScree(ev$values,ap$eigen$qevpea)
> plotnScree(nS)
Interpretasi
Dari gambar di atas diperoleh hasil bahwa banyak faktor yang dapat diambil untuk parallel
analysis adalah 2 berdasarkan analisis paralel. Berdasarkan metode acceleration factor (AF)
banyak faktor yang dapat diambil adalah 1. Hal ini sesuai dengan output yang dapat ditampilkan
diantaranya sebagai berikut :
> fit<-factanal(data,factors=2)
> print(fit)
Call:
Uniquenesses:
X1 X2 X3 X4 X5 X6
Loadings:
Factor1 Factor2
X1 -0.150 0.969
X2 -0.427
X3 0.740 0.277
X4 0.231 0.289
X5 0.929 -0.300
X6 -0.103 -0.595
Factor1 Factor2
Berdasarkan output di atas, pada bagian proporsi varians kumulatif, komponen pertama dapat
menjelaskan 33% total varians dan bila ditambahkan komponen kedua menjadi 64% dan bila
ditambahkan komponen ketiga menjadi 80%, artinya kita cukup mengambil tiga komponen
saja yaitu komponen pertama, kedua dan ketiga. Kemudian tampak bahwa berdasarkan uji
hipotesis yang dilakukan, diperoleh nilai chi-square sebesar dengan pvalue .
Sehingga diperoleh beberapa kesimpulan bahwa faktor satu terdiri dari wariabel
Sedangkan faktor dua terdiri dari variabel
c. Membentuk PCA Variabel Map
> library(FactoMineR)
> result<-PCA(data)
Interpretasi
Plot di atas juga dikenal sebagai plot korelasi variabel. Ini menunjukkan hubungan antara semua
variabel. Dapat diartikan sebagai berikut :
Berdasarkan plot di atas, setiap variabel tidak dalam kelompok yang sama artinya variabel X1,
X2, X3, X4, X5 dan X6 tidak saling berkorelasi.
KESIMPULAN
Berdasarkan hasil analisis faktor yang telah dilakukan pada Data Kualitas Air Sungai di India
yang terdiri dari 6 variabel dengan 33 unit observasi, tampak pada nScree plotnya bahwa
banyak faktor yang dapat diambil baik berdasarkan eigen value maupun parallel analysis-nya
adalah sebanyak 2 faktor. Sehingga dalam membentuk faktor yang diinginkan dengan
menggunakan fungsi factanal() pada software R diperoleh hasil bahwa Faktor 1 beranggotakan
variabel Sedangkan Faktor 2 beranggotakan Kemudian tampak
bahwa berdasarkan uji hipotesis yang dilakukan, diperoleh nilai chi-square sebesar
dengan pvalue . Maka dalam hal ini faktor yang terbentuk adalah :