iT邦幫忙

2026 iThome 鐵人賽

DAY 17
0

BE 題只連到行為投入,三個因素可以相關,其餘跨因素關係先固定為零。這樣的三因素模型,能否重現 ENGAGE-v1 的題目關聯?昨天的 EFA(探索性因素分析)提供候選與跨負荷警報;今天用驗證性因素分析(CFA,把理論寫成可被資料反駁的模型)把限制寫出來,再看資料在哪裡與它不一致。先理解哪些關係被允許、哪些被排除,才知道配適度在檢查什麼。

模型語法是理論的可執行版本

engage_model <- '
  BE =~ BE01 + BE02 + BE03 + BE04
  EE =~ EE01 + EE02 + EE03 + EE04
  CE =~ CE01 + CE02 + CE03 + CE04
'

lavaan(R 的結構方程式套件)的 =~ 定義潛在因素與指標的量測關係。cfa() 還會處理尺度設定、殘差變異與因素共變等預設,所以短語法不表示只有三行假設。讀者要再核對估計方法、有序題目的宣告、缺失值處理、尺度識別與預設參數。

程式碼的用途是讓限制可重跑;它不能證明三構念理論,也不能顯示每個預設適合本資料。

先將圖 17-1 的前三區與三行 =~ 語法逐一對照:每行的一個因素,只連到同列四道題目。再看最下區的雙向箭頭,確認 BE、EE、CE 三組相關都可估計;缺少跨因素箭頭在這個模型中表示跨負荷固定為零。

三因素 CFA 示意圖:BE 分別指向 BE01、BE02、BE03、BE04,EE 指向 EE01、EE02、EE03、EE04,CE 指向 CE01、CE02、CE03、CE04;底部以三條雙向線呈現同一組 BE、EE、CE 兩兩允許相關。

圖 17-1:ENGAGE-v1 三因素 CFA 示意圖。前三區畫各因素與四道題目的量測關係,最下區重複呈現同一組因素的三組相關,沒有新增因素。單向箭頭表示量測模型假設,雙向箭頭表示允許因素相關;都不是因果證據。跨因素負荷與題目殘差相關固定為零;圖中省略殘差變異與尺度設定,未標估計值。

六層責任

層 ENGAGE-v1 CFA
資料機制 12 題 ordinal responses 由三相關 factors 與 residuals 產生
目標 三因素 measurement model 的 loadings、factor correlations 與 model-data discrepancy
假設 預定 zero cross-loadings、residual structure、尺度識別、estimator 與抽樣條件
可觀察量 item thresholds/correlations、sample statistics
估計規則 以適合 ordinal data 的 estimator 擬合 model-implied statistics,查看參數與 fit
保證/限制 可評估限制是否與資料相容;fit 不證明構念、因果或效度

配適度指標在問不同問題

卡方檢定比較模型隱含結構與資料,在大樣本對小偏差敏感;CFI(比較配適指標)/TLI 相對 baseline 模型(model);RMSEA(近似誤差均方根)處理近似 fit 與自由度;SRMR 摘要標準化殘差(residual)。它們不是四位評審投票,也沒有跨資料、模型與 estimator 永遠適用的神奇 cutoff。

我要求文章同時看 global fit(整體配適)、parameter plausibility、殘差 pattern、標準誤與理論。若因素相關(factor correlation)接近或超過合理範圍,即使 CFI 高也需問構念(construct)是否可區分;若某殘差大,先找題意或模型遺漏,不立刻加共變異數(covariance)。

Claude 協作:生成語法,也列出預設

將資料字典與三因素假說交給 Claude 時,除了 lavaan 語法,也要請它列出 cfa() 未寫在這三行中的預設。若回答直接用一般 ML,卻未說明五類反應如何處理,便少了一項分析決策。這種缺漏可作為語法審閱案例,不能只因程式能跑就算通過。

我修正任務:保留 continuous approximation 與 ordered-data 分支,正文不宣稱某 estimator 普遍最好;執行時明確列 ordered=items 與選定 estimator,保存版本。教師查核對照 lavaan 官方 CFA tutorial 與 categorical-data 文件,而不是只看程式沒有誤差(error)。

完整例題:三因素與一因素競爭

第一個候選是上述三因素。第二個候選把 12 題全部放進 general engagement。比較不是為了證明三因素「真」,而是問更嚴格的一因素限制是否留下系統 discrepancy。若一因素模型在 BE、EE、CE block 內出現一致殘差,而三因素減少這些 pattern,internal-structure evidence(內部結構、證據)較支持區分三面向。

接著檢查因素負荷量(loading)。假設 CE02 因素負荷量較低且有跨因素訊號。EFA 已預告它可能同時含認知與行為成分;CFA 的 zero cross-loading 會把這個張力表現為 misfit。可選方案包括修題、事前指定 cross-loading、改用較彈性模型,或保留限制並縮小結論。不能只選 fit 最漂亮的一個而不說改了什麼理論。

反例:modification index 變成改模清單

假設收到一份修改指標(modification indices, MI)清單,回答建議由大到小加入殘差共變,直到 CFI 過關。每增加一條參數,都在同一份資料上追逐配適度;若缺少題目措辭、時序或方法上的理由,就無法清楚解釋修改後的模型。這是要檢查的錯誤決策,不是自動調整模型的操作步驟。

本書的 rule 是:MI 只指出放鬆某限制可能改善 fit,不提供 substantive justification。新增參數要先寫原因,記錄是否事前預期,並在新資料或敏感度分析中檢查。若原因找不到,保留 failure 並縮小用途。

第二個 failure case(失敗案例)是模型 fit 良好就寫「construct validity established(構念、效度)」。CFA 只處理內部結構(internal structure)的一部分;Day 14 的內容、作答過程、外部關係與用途後果仍未完成。

識別與不合理估計

潛在因素(latent factor)沒有天然尺度,常用固定第一個因素負荷量或因素變異數(factor variance)來設定。兩種參數化會改變未標準化數字的解釋,不應混報。若出現負殘差變異數(residual variance)、極端因素負荷量、巨大標準誤或因素相關 >1,不是把表格藏起來;先檢查資料、模型與識別,並記錄 Heywood case(負殘差變異的不合理解)。

報告一個模型,不只報四個指標

可重現模型卡至少記錄資料版本、題目尺度、樣本與 missing、estimator、參數化、模型語法、套件版本、收斂狀態、主要參數、global fit、局部殘差、替代模型與事後修改。這些資訊讓另一位研究者知道我估了哪個模型,而不只是看到一排 CFI、TLI、RMSEA、SRMR。

我也把 standardized solution 和 unstandardized solution 分開。標準化因素負荷量方便同一模型內比較,未標準化參數保留尺度設定;不同標準化方法可能回答不同問題。若文章只截最漂亮的一欄,讀者無法重建參數化。

因素分數(factor score)本篇不作個人決策。即使測量模型(measurement model) fit 可接受,factor-score estimation 還有 indeterminacy、估計誤差與用途問題。班級教學示範可畫分布,但不得把估計分數當成無誤差的學生特質。這條限制會在 Day 26 學生版再次檢查。

最後,我保留一個最小 negative result:若一因素與三因素差異不明顯,不把「無顯著差異」寫成完全等價。可能是樣本資訊不足、因素(factor)高相關或 indicators(指標題目)太少。結論應落在目前資料對區分度的支持,而不是模型身份的永久判決。

原問題的答案是:CFA 把理論寫成一組可被資料挑戰的限制,fit 是診斷限制的資訊,不是理論認證。基礎閱讀是 lavaan 的 CFA tutorial;發展閱讀是測量模型、fit 與殘差 diagnosis;前沿閱讀可進 ESEM、Bayesian approximate zero 與 cross-validation。

圖 17-1 與三行語法共同界定了這個模型;一因素競爭例與修改指標規則則說明如何挑戰它。本篇沒有把示意圖當成估計結果。下一篇把同一模型帶到 A、B 群體:各群配適度都能接受,是否就足以比較平均數?

來源與協作揭露


上一篇
EFA:讓資料探索結構,但不讓 Claude 替你決定
下一篇
測量恆等性:不同群體真的使用同一把尺嗎
系列文
不是叫 AI 寫教科書:大學教師用 Claude 自學心理計量,打造可驗證、可再教的客製化教材 共 22 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言