a. Tujuan Praktikum
Setelah praktikum pada modul 3 ini diharapkan mahasiswa mempunyai
kompetensi sebagai berikut:
1) Dapat melakukan prosedur analisis faktor dan menginterpretasikannya
2) Dapat melakukan prosedur analisis komponen utama (PCA) dan
menginterpretasikannya
b. Materi
1) Analisis Faktor
Analisis faktor pertama kali diperkenalkan dan dikembangkan oleh Karl
Pearson dan Charles Spearman (1904), Thurstone (1947), Thomson (1951),
dan Lawley (1940, 1941) terutama dalam bidang psikologi (sehingga disebut
psikometri) dan belakangan menjadi salah satu alat analisis multivariat yang
paling bermanfaaat dalam berbagai bidang ilmu. Tujuan utama dari analisis
ini adalah untuk menjelaskan, jika ada, hubungan kovarian di antara variabel
dalam kaitannya dengan beberapa nilai acak yang tidak dapat diukur atau
diobservasi yang disebut dengan faktor. Ide dasarnya ialah adanya
kecenderungan semua variabel di dalam grup tertentu memiliki korelasi yang
tinggi satu sama lain, tetapi berkorelasi rendah dengan variabel lain pada grup
yang berbeda. Misalnya, adanya korelasi dari grup ujian sastra, bahasa
Perancis, bahasa Inggris, matematika, dan musik dikumpulkan di bawah
faktor yang dinamakan oleh Spearman sebagai faktor “intelligence” atau
kecerdasan. Grup kedua menampilkan nilai-nilai untuk segala jenis ujian
ketahanan fisik dan kesehatan jasmani yang mungkin saja berada di bawah
faktor lainnya. Struktur seperti inilah yang diselidiki dalam analisis faktor.
X p p l p1 F1 l p 2 F2 ... l pm Fm p
Koefisien lij , unsur ke-(i,j) dari matrik L, adalah loading factors untuk
common factors Fj terhadap X1 , di mana i = 1, 2, …, p dan j = 1, 2, …, m.
Model faktor tersebut memiliki asumsi:
i) E(F) = 0( m1)
T
ii) cov(F ) E(FF ) I( m1)
1 0 0
0 2
0
iv) cov(ε ) E(εε T ) ψ , dengan 0
( m1) i
0 0 p
T T
v) cov(ε, F ) E(εF ) 0( pm)
ii
Jika var( Xi ) ii 1 yaitu ketika matriks kovarian merupakan matriks
korelasi. Pada keadaan demikian maka, matriks loading faktor tidak lain
merupakan matriks koefisien korelasi antara variabel asal dengan common
factors.
Besarnya porsi varians yang diberikan oleh m common factors terhadap p
variabel asal disebut dengan communality. Kontribusi terhadap varians dari
faktor spesifik disebut dengan varians spesifik. Apabila comummanlity ke-i
disimbolkan dengan h12 , maka selanjutnya dapat dijabarkan sebagai berikut:
l 2 l 2 ... l 2
ii i1 i2 im I
varXi communality varians spesifik
atau
hi2 i21 li22 ... lim2
dan
2
ii hi i , dengan i = 1, 2, …, p.
Aspek yang paling krusial dalam analisis faktor adalah menduga loading faktor
dan varians spesifik. Misalkan X 1 , X 2 ,..., X n adalah sampel random dari p
berdistribusi multivariate dengan E(X) μ( p1) dan cov(X) ( p) , maka
analisis faktor memiliki dua bagian penting yaitu:
i) mengidentifikasi struktur
ii) menduga parameter
Mengidentifikasi struktur yang lebih sederhana adalah dengan menentukaan m
(< p) yang tepat sehingga model faktor terpenuhi. Penentuan banyaknya m ini
umumnya dilakukan secara subjektif. Namun demikian tidak menutup
kemungkinan untuk dilakukan prosedur secara sistematik untuk menentukan
banyaknya faktor (m) dengan metode MLE. Mengadaptasi ide penentuan
banyaknya komponen utama pada analisis komponen utama juga dapat
digunakan untuk menentukan banyaknya common factors (m) (dapat dibaca
lebih lanjut pada Johnson and Wichern ed. 6).
Jika model faktor telah teridentifikasi dan parameter-parameter telah ditaksir,
berikutnya adalah memberikan makna yang tepat serta menfinterpretasikan
loading faktor hasil taksiran. Loading faktor pada akhirnya umumnya dirotasi
(ditransformasi menggunakan transformasi orthogonal) untuk membantu dalam
hal interpretasi (hal ini terkait dengan ketidakunikan solusi yang dihasilkan,
penjelasannya ditinggalkan sebagai latihan).
Rotasi Faktor
Semua loading factors yang diperoleh dari loading inisial dengan transformasi
orthogonal memiliki kemampuan untuk kembali membentuk matriks kovarian
(atau korelasi). Dari aljabar matriks, kita mengetahui bahwa transformasi
orthogonal korespon terhadap rotasi (atau refleksi) yang rumit. Oleh karena itu,
transformasi orthogonal dari loading factors disebut rotasi faktor.
Secara umum rotasi faktor dilakukan sedemkian rupa sehingga faktor yang
sudah dirotasi memiliki sedikit saja vaariabel dengan nilai mutlak loading yang
besar, sedangkan sisanya kecil sekali atau nol. Pola seperti ini akan
memudahkan pengguna untuk menginterpretasikan faktor yang terbentuk.
Misalkan pada hasil analisis faktor didapatkan bahwa hanya tiga variabel
pertama saja yang memiliki nilai loading factors tinggi pada common factor
pertama, maka common factor pertama tersebut dapat diinterpretasikan sebagai
kombinasi linier dari tiga variabel asal tersebut. Dalam beberapa literature juga
disebutkan teknik transformasi linier tak orthogonal yang biasa disebut oblique
rotation. Beberapa metode untuk merotasi matriks loading factors sehingga
orthogonal adalah: rotasi quartimax dan rotasi varimax yang dikembangkan
oleh Kaiser (1958) dan paling populer.
2 T
k 1 j 1
T
Y p a p X a p1 X 1 a p 2 X 2 ... a pp X p
ini sama dengan jumlah seluruh eigen value dari matriks , yaitu ipi i .
Dengan kata lain, kontribusi dari setiap komponen utama ke-j terhadap total
variabilitas X adalah
i .
ipi i
ˆ
Perlu dicatat bahwa pada data sample matriks dapat diduga oleh S .
Penentuan eigen value dapat diperoleh dari matriks kovarian atau matriks
korelasi. Perbedaan satuan pada variabel yang ada umumnya menjadi dasar
pemilihan matriks korelasi untuk perhitungan eigen value.
Metode ketiga (3) adalah dengan memanfaatkan scree plot. Cara ini bisa
digunakan baik untuk matriks korelasi maupun kovarian. Scree plot
merupakan plot eigen value i terhadap i, di mana i = 1, 2, .. p. Menggunakan
metode ini, banyaknya komponen utama yang dipilih, yaitu i, adalah jika
pada titik ke-i tersebut plotnya curam di kiri tapi tidak curam ke kanan. Ide
dari prosedur ini adalah banyaknya komponen utama yang dipilih sedemikian
rupa sehingga selisih antara eigen value sudah tidak terlalu berarti.
Kelemahan dari metode ini adalah faktor kesubjektifan yang tinggi dalam
menginterpretasikan scree plot.
Jelas bahwa, berdasarkan nilai-nilai yang diberi kotak bergaris merah, terdapat
pola sistematis dalam korelasi antar variabel dalam data Olympia. Nomor
marathon tampak “lebih dekat” terhadap nomor-nomor lari jarak jauh, begitu
pula untuk nomor 100 m yang “lebih dekat” dengan nomor 200 m dan 400m,
sehingga kita dapat mengharapkan tampak terdapat hubungan linier di antara
variabel yang dapat dijelaskan oleh paling tidak satu atau dua common factor.
Selanjutnya kita akan mengidentifikasi sampai dengan menginterpretasikan
faktor-faktor yang dapat dibentuk oleh data Olympia menggunakan SPSS dan
R. Pastikan dataa tersebut sudah disiapkan pada Data editor SPSS atau siap
dipanggil dalam R console.
Klik Continue, pada dialog box Factor Analysis, pilih opsi Score, beri
centang pada Save as variables dan pilih metode regresi untuk menentukan
skor faktor.
Communality
Nilai pada kolom Extraction merupakan
communality ( hi2 ) untuk setiap variabel.
Tingginya nilai communality untuk setiap
variabel ini mengindikasikan bahwa
komponen yang diekstrak sudah cukup
untuk menjelaskan variabel-variabel asal.
Apabila dalam suatu kasus terdapat nilai
communality yang sangat kecil untuk
variabel tertentu, maka perlu ditambahkan banyaknya faktor yang harus
diekstrak Dari nilai communality Extraction diperoeh semua nilai >50%
maka semua variabel dapat menjelaskan faktor.
Scree plot
Berdasarkan scree plot berikut, tampak bahwa nilai eigen value turun curam
dari 1 ke 2 , sehingga dapat dikatakan dua komponen mungkin sudah cukup
untuk menjelaskan variabel-variabel asal. Hal ini cukup masuk akal setelah
melihat communality meskipun varians sudah cukup tinggi pada komponen
pertama.
#===============================================#
# Analisis Komponen Utama, shfandari@gmail.com #
#===============================================#
aku <- function(data,cor = TRUE){
##Menentukan matriks korelasi atau kovarian berdasarkan masukan
# user
if (cor == TRUE){
mat = cor(data)}
else mat = cov(data)
Untuk menjalankan script di atas, dapat menggunakan perintah berikut:
# Memanggil data, pastikan direktorinya sudah tepat >
olympia <- read.csv("olympia.csv", header=T)
> anafak(olympia[,2:9],factors=2,cor=T)
#Apabila banyaknya faktor tidak ditentukan, analisis faktor akan
#dijalankan berdasarkan banyaknya komponen yang memiliki
#eigenvalue lebih dari atau sama dengan satu
$Communality
[,1]
[1,] 0.9191166
[2,] 0.9450548
[3,] 0.8450827
[4,] 0.8393255
[5,] 0.8985508
[6,] 0.9717606
[7,] 0.9692232
[8,] 0.9373583
(lanjutan)
$Rotated_loadings
$Rotated_loadings$loadings
Loadings:
[,1] [,2]
[1,] -0.380 -0.880
[2,] -0.441 -0.867
[3,] -0.486 -0.780
[4,] -0.740 -0.540
[5,] -0.786 -0.529
[6,] -0.881 -0.442
[7,] -0.894 -0.411
[8,] -0.899 -0.360
[,1] [,2]
SS loadings 4.126 3.200
Proportion Var 0.516 0.400
Cumulative Var 0.516 0.916
$Rotated_loadings$rotmat
[,1] [,2]
[1,] 0.7592512 0.6507976
[2,] -0.6507976 0.7592512
$Original_loadings_factor
[,1] [,2]
[1,] -0.8613386 -0.42096614
[2,] -0.8985301 -0.37107733
[3,] -0.8768521 -0.27606720
[4,] -0.9133046 0.07211241
[5,] -0.9415451 0.10974400
[6,] -0.9566323 0.23793939
[7,] -0.9468493 0.26962857
[8,] -0.9165121 0.31203183
Secara umum, keluaran dari R tidak berbeda dari keluaran SPSS, perbedaan
tanda negatif pada loading factor dan hasil rotasinya dapat diabaikan.
e. Tugas
1. Carilah data multivariat yang variabel-variabelnya memiliki indikasi untuk
dapat diekstraksi dengan analisis faktor (gunakan bantuan uji KMO dan
Bartlett), diharapkan tidak mengabaikan tahap data preprocessing. Data bisa
diperoleh dari data Tugas akhir atau data dari internet yang salah satunya bisa
dari UCI Machine Learning Repository (archive.ics.uci.edu/ml)
2. Membuat laporan praktikum mengikuti format yang telah diberikan.
3. Tugas dilakukan berkelompok sesuai kesepakatan dan dikumpulkan paling
lambat seminggu setelah praktikum Modul 3 berakhir.