[SPSS] 探索性因素分析(Exploratory factor analysis, EFA)基本操作與解讀
已更新:2022年11月28日
因素分析(factor analysis)很常使用在知識探循方面,但因為內容涵蓋了一些抽象的統計概念,筆者試著用簡單的例子來說明.
當你想了解某些概念的結構成分,例如:理想男性的特質.你可能會問很多人,得到了很多描述,像是膽子很大.動作豪邁.獨當一面...等等.我們把這些蒐集到的敘述中,很常被提到的一些特質做成問卷,去問大家同不同意,像是"強悍的男人很有男子氣概",然後提供不同程度的認同選項,像是1(非常不贊同)~7(非常贊同),這個技術也被稱為李克特氏量尺(Likert Scale).得到的大量問卷結果,我們把它放進統計分析軟體,就會看到有一些題目會被分在同一堆,另外又有一些題目被分在同一堆.然後我們就看著這些同一堆的題目當中的敘述,去推估這大概是在指哪種特質,然後自己給一個命名,像是競爭特質.等到每一堆都命名完,我們就會得到好幾樣關於理想的男性特質有包含哪些,這就叫做探索性因素分析(Exploratory Factor Analysis, EFA).
還有一種是,我已經知道有其他學者提出關於理想男性具有若干特質的論述或研究,但我想自己再確認看看是不是,所以我照著這些特質去編寫題目和蒐集問卷,一樣是給予像是1~7的選項,然後問受試者對題目的認同程度.我們把得到的大量問卷結果丟進統計軟體,看看是不是像預期中的,某些題目會被分在同一堆裡,像是競爭特質的題目有沒有被分在同一堆.藉此我們就可以再次檢驗先前學者提出關於理想男性的特質結構是不是穩定,這就是驗證性因素分析(Confirmatory Factor Analysis, CFA).
事實上,因素分析是很樣本依賴的,所以你可能會發現,某一票人的問卷透過軟體分類出來的結果,可能會跟另一批人不太一樣.這也就是為什麼一般會希望在做因素分析時可以大量取得樣本,來減少抽樣誤差.
那麼因素分析至少要取得多少人的問卷結果? Comrey(1973)認為當樣本數在100 以下是不適合進行因素分析的,而其他學者則有提出至少300樣本數的說法(邱皓政,2006).不論如何,多抽是好的,代表著分析結果越趨穩定.筆者也曾抽過1000以上樣本數,一半拿來跑探索性因素分析,另一半跑驗證性因素分析,這樣能使研究結果更有論述的依據,說明分出來的幾項特質是穩定的.
接下來我們會以先前提到的例子做探索性因素分析的演練,也就是發展一份可以測量理想男性特質的量表.並就分析結果出現的各項名稱與概念做解釋.以下為本例的量表局部,因研究特性僅採取4點量表.

這邊使用的是SPSS第23版.首先打開資料檔,往下是個別受試者,橫向為每位受試者的屬性,像是性別.年齡.各題的量表分數...等等.
按分析→維度縮減→因數,

進入因素分析窗格,把要分析的項目選好,然後按箭頭框框,丟進變數(V)中.


接下來要做一些分析前的設定,右邊有一整排,先點入敘述統計(D)的框框,勾選初始解(I),以及KMO與Bartlett的球形檢定.然後按繼續(C).

然後點入萃取(E), 一般而言,方法上大多會選用主成分分析(principal components analysis, PCA),分析試題間的相關性矩陣(R),勾選顯示未旋轉因子解(F)和碎石圖(S).碎石圖又稱陡坡圖.
在萃取的選項,假如現在進行的是探索性因素分析,也就是想知道理想男性特質大概會有哪幾個大項,那我們可以先選擇根據固有值(E).
其實這邊的固有值,在學理上比較常稱為特徵值(eigenvalue),特徵值大於1,表示變數能解釋的變異超過1,為相對重要而可以保留下來.
然後收斂反覆運算次數上限(X),預設為25.以上都設定完成後,按繼續(C).
如果研究者是要進行驗證性因素分析,由於一開始已經假定這些題目共分為哪些大項,就可以選擇萃取固定因子數目(N).這部分稍後也會操作到.

然後點入旋轉(T),方法選擇最大變異(V),這是隸屬於直交轉軸法(Orthogonal)的其中一種,假設因素和因素之間沒有相關,兩者間呈90度的關係.
一般狀況下,都會使用預設的最大變異法做因素轉軸,除非研究者已經從先前的文獻推估,因素和因素之間是有相關的,才使用斜交轉軸(Oblique).
本例先使用直接轉軸的最大變異分析資料,但其實在社會科學的領域裡,很少有兩個變項是互相獨立的,直接斜交(O)也是經常使用的方法.
接著勾選顯示旋轉解(R),收斂反覆運算次數上限的預設為25.設定好按繼續(C).

然後點入選項(O),遺漏值預設為整批排除觀察值(L),但如果並不想只是因為一兩題漏答就刪掉若干受試者,那也可以選擇取代為平均值(R).
係數顯示格式勾選暫停較小的係數(U),預設為絕對值低於0.10,但通常因素負荷量低於0.30就很難支持是屬於某個大項,所以也可改為0.30.
設定好按繼續(C).跳回主畫面,按下確定鍵,就會輸出分析報表.

先看第一個KMO與Barlett檢定,這可以判定這組資料適不適合做因素分析.
Kaiser-Meyer-Olkin取向適切性量數為.908,Bartlett球形檢定p<.001,顯示有良好的抽樣適配度,適合作因素分析.
通常0.7~0.79會被視為有中等適配度,而在0.8以上就可稱為良好適配度(Kaiser,1974).

接下來我們看解說總變異量.在這個例子裡,先看擷取平方和負荷量的總計部分,系統判斷這批資料有8個成分超過特徵值1,是相對重要的.
所以這就代表理想男性特質應該要有八個大項嗎?其實未必,我們可以由接下來的陡坡圖再做考量.

這個陡坡圖由固有值(特徵值)1.6左右開始就漸趨平緩,對照下來是大約4~5個成分,也就是說這可以做為最佳成分數量的參考指標.
由於成分5~8的特徵值大約都在1.2以下,因此在本例中可考慮不採用,推估4個成分應該就可以充分說明理想男性特質的幾個大項.

接著來看旋轉成分矩陣.空白的部分代表該題目在某成分裡的負荷量小於0.3,所以不顯示,這是剛剛設定後的結果,這樣畫面看起來會乾淨明瞭些.
你會發現有些題目在兩個以上的成份裡有高於0.3的負荷量,通常這代表著該題目可以問出不同成分的東西,不算是很好的單一概念題目.
然而這樣的題目未必要刪除,如同先前所說,在社會科學的領域裡,很少有兩個變項是互相獨立的,通常都有這麼一點點關聯性.
我們可以看看該題目在哪個成分的負荷量最大,然後再回頭看看該題目的內容,是否能充分問出這個成分的內涵,如果可以,也是能夠選擇保留.
然而我們可以先不用急著檢視.由剛剛的陡坡圖已知,我們只需要將題目分成大概四個成分就好了,所以接下來要再重新跑一次因素分析.

我們回到資料畫面,其他的設定都一樣,但點入萃取(E),將萃取方式改為萃取固定因子數目(N),要擷取的因子(I)中填入4.
按繼續(C),然後按確定,就會輸出一份新的報表.

由於題目數量沒有變動,所以球形檢定結果會是一樣的.這時解說總變異量會依照先前的設定,將題目分配成4個成分.

這時我們才來看旋轉成分矩陣.大概可以看出每個題目是隸屬於哪個成分,但也有像是a2.a3這種同時歸在兩個成份裡,而且因素負荷量都不高的,通常這種題目可以考慮刪除,因為代表性都不夠,定位也模稜兩可.但像a10在成份1裡的因素負荷量有達.544,雖然在成份3也有.304的因素負荷量,然而這樣的題目就可以考慮保留,因為具有代表性,定位也較明確.
在本例中,最後刪除掉a2,a3,a18,a20,a21,a23,a27,a29,a30,大部分是因為跨了兩個成分,且在這兩個成分的因素負荷量差不多,難以歸類.
a30則主要基於因素負荷量較低,且檢視其題目內容並非典型,因此予以刪除.最後判斷35個題目中保留26個題目.
基本上題目的保留與否,還是由研究者做決定.如同先前所說,因素分析是非常樣本依賴的,如果今天研究取得的樣本數不是很多,且回頭檢視題目發現應該還是能測到該成分的核心概念,則能考慮予以保留,或許是因為其他誤差才造成因素負荷量較低.

分析完畢之後,我們將剩下的題目彙整成報表,呈現其因素組型矩陣,以及因素間相關係數,還有這些題目與各成份的相關和Cronback's α,這樣一來就提供了可接受的建構效度與信度憑證.


以上就是探索性因素分析的基本操作與解讀,是研究者發展量表時經常使用的技術.
至於驗證性因素分析,則通常使用結構方程模式(structural equation model, SEM)作模式適配度考驗,內容請見[SPSS] 驗證性因素分析(Confirmatory Factor Analysis, CFA)基本操作與解讀(待補)