什麼是層次迴歸分析 (hierarchical regression)?

什麼是層次迴歸 Hierarchical Regression?

當你搜尋「層次迴歸」時,維基百科說 Hierarchical linear modeling,Stata 說 Swamy-Arora estimator,統計書又說 hierarchical regression 是一種變數分批進入的方法。這些名詞到底有什麼關係?為什麼會搞混?

簡單來說:這其實是兩種完全不同的東西,只是中文都用了「層次」這個詞。

層次迴歸 = 變數分批進入模型

想像你是一位教育研究者,想預測學生的學業表現。你手上有兩類變數:

  • 控制變數:學生的家庭收入、父母教育程度、性別
  • 研究變數:學生的學習動機

你不希望學習動機的「功勞」被控制變數稀釋,或者想先看控制變數能解釋多少變異,再加入研究變數看看能增加多少解釋力。

這時候你用的是 hierarchical regression——把變數分「階」放入模型,一次一批:

第一階模型:成績 ~ 家庭收入 + 父母教育 + 性別
第二階模型:成績 ~ 家庭收入 + 父母教育 + 性別 + 學習動機

比較:ΔR² 就是學習動機的獨立貢獻

這裡的「層次」指的是變數進入的順序層次,不是資料的結構層次。

用 SPSS 操作時,你會在「Block」欄位分批放入變數,就是這個概念。

HLM = 資料本身有巢套結構

現在換個場景:你想研究學校資源對學生成績的影響。你的資料長這樣:

  • 50 所學校,每所學校 30 位學生
  • 學生(Level 1)巢套在學校(Level 2)之內

這時候問題來了:

  • 同一所學校的學生成績會比較接近(共同的老師、校風、設備)
  • 這違反了一般迴歸「殘差獨立」的假設
  • 如果你跑一般迴歸,標準誤會被低估,容易假性顯著

這時候你需要 Hierarchical Linear Modeling (HLM),多層次線性模式。

HLM 的「層次」指的是資料的階層結構

Level 1: 學生 i 在學校 j 的成績
Level 2: 學校 j 的平均資源水平

學生成績_ij = γ₀₀ + γ₀₁(學校資源_j) + u₀_j + ε_ij

這裡處理的是資料依賴性,不是變數順序。

一張圖看懂如何選擇

決策流程圖:資料有階層結構嗎?

這張圖總結了選擇邏輯:

問題使用方法
想控制變數進入順序,看 incremental R²?層次迴歸
資料有巢套結構(學生→班級→學校)?HLM
只是單純預測,沒有階層也沒有分批需求?一般多元迴歸

常見誤區

「層次迴歸就是多層次模式」

– 錯。前者是變數管理策略,後者是處理資料依賴的統計方法。

「跑 HLM 比較高級,所以我應該用 HLM」

– 錯。如果資料沒有巢套結構,跑 HLM 是多餘的,甚至有過度參數化的風險。

「分批放變數一定要用 SPSS 的 Block 功能」

– 不一定。你可以手動跑多個模型比較 ΔR²,只是 Block 功能幫你省時間。

站內相關文章

若想深入了解,可以參考以下文章:

  • [多層次線性分析方法—HLM軟體應用](/?p=52):HLM6/7 軟體的實際操作教學
  • [Stata: xtmixed 階層線性模式分析指令簡介](/?p=54):用 Stata 跑多層次模式的指令說明
  • [比較迴歸分析模組之間的差異](/?p=5):迴歸相關方法的整體比較

延伸閱讀素材建議

針對想進一步鑽研的讀者,建議準備:

文獻推薦

– Cohen, J., Cohen, P., West, S. G., & Aiken, L. S. (2003). *Applied Multiple Regression/Correlation Analysis for the Behavioral Sciences*(層次迴歸經典)

– Raudenbush, S. W., & Bryk, A. S. (2002). *Hierarchical Linear Models*(HLM 聖經)

實作資源

– SPSS:Analyze → Regression → Linear → Block 分批放入

– R:lm() 分批比較 或 lme4::lmer() 做多層次

– Stata:xtmixedmixed 指令

延伸主題

– 層次迴歸與調節效果的關係

– HLM 與固定效果 vs 隨機效果的取捨

– 交叉分類多層次模式(Cross-classified models)

總結

下次看到「層次」兩字,先問自己:這指的是資料的階層,還是變數進入的順序?

搞懂這個區別,你就不會再在方法論上迷路了。

延伸閱讀

Cohen, J., Cohen, P., West, S. G., & Aiken, L. S. (2003). Applied Multiple Regression/Correlation Analysis for the Behavioral Sciences.

Raudenbush, S. W., & Bryk, A. S. (2002). Hierarchical Linear Models.

如果有問題,歡迎留言。

1 thought on “什麼是層次迴歸分析 (hierarchical regression)?”

  1. 版主你好,當研究生的日子以來,從你的部落格受益良多,不過最近在指令上遇到了瓶頸…我想請問您知道stata是否有指令可以產生以下的數據:

    我把資料按"年"分成不同的群, 因為想知道各年之間變數的數據(變數都是一樣的)變化是否有差異. 然後我的問題是, 我每年跑出一條迴歸式(研究期間只有8年,所以一共8條迴歸式), 想以一個表總結出這八條迴歸式的係數與t值,係數可以以簡單平均的方式去算,可是t值應該就不可以了吧?……不知道這是要用怎樣的檢定(對不起…我統計也是只懂怎麼用,不懂原理的人)還是方法,才可以知道八條迴歸式平均後係數的t值?

    其實我參考的文獻說他用的是Fama-MacBeth Regression的作法,這個迴歸式好像在金融研究領域蠻有名的,很多文獻都有提到他,我也在線上有找到一些他的說明,甚至有國外教授寫好的指令(http://www.kellogg.northwestern.edu/faculty/petersen/htm/papers/se/se_programming.htm 網頁中間部分有個Fama-MacBeth Standard Errors那一小欄就是),可是由於stata指令我只會一些最基本的,從開頭就看不懂那些說明……

    雖然知道領域不同,還是冒昧的請教版主這個問題,基本上,我參考的文獻是用上面說的Fama-MacBeth Regression的方式推得那些迴歸式的平均係數與t值;而目前自己用土法煉鋼的方式是算得出平均係數(就是上面提的簡單八年的係數平均…不過,該不會其實也不能這樣算吧@@),剩下的問題就在於實在不知道他那些所謂平均的t值是怎樣產生的.叨擾了

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to Top