跳到主要内容

多层线性与混合效应模型

多层线性模型 (HLM)

当学生抽自班级、员工抽自部门时,把第二层单元写成随机截距,先用 ICC 看有多少变异坐在班与班之间,再估计第一层协变量的固定斜率。

更新日期 2026-08-29 回归

这篇能回答什么

HLM(Hierarchical Linear Modeling)回答的是:「同一课堂里的平均分并不是独立掷骰子,班级基线不同时,普通 OLS 会把标准误算得过小」。它把资料写成两层:第一层是学生(语文成绩 → 平均分),第二层是班级标识。工作台拟合随机截距模型——每个班级有自己的基线偏离 u_{0j},语文成绩的斜率在本页是全样本共用的固定效应,不估计「每班一条斜率」。

适合:明确的嵌套抽样(学生–班级、病人–医院、员工–门店),因变量定量,至少有一个第一层或可并入固定部分的协变量,以及一个定类分组标识。先看零模型的 ICC:班间方差占全部方差的比例。本教学表上 ICC 贴零,本身就是一条诊断,不是程序出错。

什么时候不该用

自变量按理论分块进入、数据并没有嵌套,那是分层回归,不要被「层」字带偏。只要一条总体回归、观测可视为独立,用线性回归。只报告组内相关、不估固定斜率,可对照组内相关系数 ICC。纵向随访、随机斜率或交叉随机效应的更广义说法,见多水平/混合效应模型。发票号、学号不能当第二层。

如何选择方法

先问抽样是否嵌套。是,且关心「班与班的基线差占多少、控制班级基线后语文还解释平均分多少」→ 本页 HLM。否,只是把控制变量先放进方程 → 分层回归。只要独立样本的条件均值 → OLS。只要一个信度式的组内相关、没有回归 → ICC 专页。

  • HLM(本页):1 个班级/学校标识 + 1 个定量 Y + 1–30 个 X;零模型 ICC、固定效应、τ00 与 σ²。

  • 分层回归:同一层 OLS 的分块进入,看 ΔR²,没有随机截距。

  • 线性回归:忽略聚类时的条件均值;ICC 很大时标准误会偏乐观。

  • ICC:只分解组间/组内方差,不报告语文成绩的斜率。

输入、输出与限制

输入

分组变量必须是真实的第二层单元(本例为班级),恰好 1 列。因变量 1 个定量列。自变量 1–30 个,定量或定类;本页教学只放了语文成绩。按所用列成表删除缺失。

  • 分组变量:最少 1 个,最多 1 个(定类,第二层 ID)。

  • 自变量:最少 1 个,最多 30 个。

  • 因变量:最少 1 个,最多 1 个(定量)。

输出

固定效应表给出 const 与各自变量的系数、标准误、z 与 p。表注报告第一层有效行数、第二层组数、ICC、组间截距方差 τ00 与残差方差 σ²。洞察会根据 ICC 是否大于约 0.05 提示「建议坚持 HLM」还是「与 OLS 可能接近」。图为各班随机截距的收缩估计(毛毛虫式排序)与固定效应对照。

产品限制

  • 完整个案少于 30 行、或第二层少于 3 个班级时,混合似然难以收敛。

  • 聚类数上限 200,总行数上限 50 000;拟合时最多取 2500 行。

  • 毛毛虫图最多展示偏离最大的 20 个班级。

  • 不自动做组均值 / 总均值中心化;需要 CWC 或情境效应时,请先在表里造好中心化列再上传。

  • 本页不估计语文成绩的随机斜率,也不做跨层交互(班级均值 × 学生语文)。

案例

研究问题。 定量成绩表里学生隶属于班级。研究者想知道:平均分的变异有多少来自「进了不同的班」,以及在承认班级基线之后,语文成绩还能否解释个人平均分。

教学示例工作表为「Sheet1」。分组变量选「班级」,自变量选「语文成绩」,因变量选「平均分」。表注第一层有效行 790,第二层 18 个班。本页 ICC = 0.0000——这张教学表上,班与班的平均分基线几乎没有可估方差。下载后按同样三角色复现系数。

下载教学示例表(定量成绩)

在 StatsX 中操作

  1. 步骤 1 · 上传表格

    打开工作台,将 Excel / CSV / JSON 拖入上传区。本案例使用定量成绩 xlsx,确认工作表为「Sheet1」。单文件不超过 20 MB。

  2. 步骤 2 · 查看画像与质量

    确认平均分、语文成绩为定量,班级为定类且水平数明显大于 2。不要把学号拖进分组变量。

  3. 步骤 3 · 选择「多层线性模型 (HLM)」

    在算法目录搜索「HLM」或「多层线性」,点选多层线性模型 (HLM)。不要误选分层回归。

  4. 步骤 4 · 指定第二层与变量并运行

    分组变量勾选班级;自变量勾选语文成绩;因变量勾选平均分。点击运行分析。

  5. 步骤 5 · 阅读结果

    先读表注里的 ICC 与 τ00,再读 const 与语文成绩的系数。ICC 贴零时,重点写「班间方差可忽略」,不要编造「班级效应很大」。

StatsX 工作台上传含班级标识的成绩表
将教学示例表拖入工作台上传区。
列画像确认班级为定类、成绩为定量
核对班级水平数足够、平均分为定量。
在目录中选择多层线性模型 HLM
在算法目录中选定「多层线性模型 (HLM)」。
为 HLM 指定班级、语文成绩与平均分
第二层放班级,第一层协变量放语文成绩,结局放平均分。

如何阅读输出

下表由同一份教学成绩在 StatsX 中运行 HLM 得到。表注:第一层 790 人,第二层 18 个班;ICC = 0.0000;τ00 = 0.0000,σ² = 31.0807。零模型几乎把全部变异都留在班内残差,班级随机截距没有可分离的方差——洞察因此写「组间变异占 0.0%,HLM 与 OLS 结论可能接近」。

多层线性模型 (HLM) 混合效应估计表 | 因变量: 平均分
固定效应 (Fixed Effects)估计系数(Coef)标准误z值P值
const61.61531.054758.4202<0.001
语文成绩0.17370.013812.5606<0.001

左右滑动可查看完整表格

Level-1(样本量)=790,Level-2(聚类组数)=18。模型组内相关系数 ICC = 0.0000。方差分量:组间截距方差 τ00=0.0000,残差方差 σ²=31.0807。

HLM 固定效应与 ICC 表注
工作台中的固定效应表,const 与语文成绩应与上表一致。
各班随机截距收缩与固定效应对照
左侧为班级基线的收缩估计,右侧为固定效应;τ00 贴零时班级点会挤在零附近。

第二层标识是班级。【多层线性HLM】Level-2分组=班级,ICC=0.000。 把它读成「嵌套检验已经做过」:本样本不支持再渲染一条很大的班级故事。

固定部分:const = 61.6153(标准误 1.0547,z = 58.4202,p < 0.001),表示语文成绩为 0 时的总体平均分位置,通常不作课堂解释。语文成绩系数 = 0.1737(SE = 0.0138,z = 12.5606,p < 0.001):在本页的未中心化尺度上,语文每高 1 分,平均分平均高约 0.17 分。因为 ICC 为 0,这条斜率会非常接近把班级当忽略聚类的 OLS;HLM 的价值在于先检验嵌套是否存在,而不是本例一定改写系数。平均分含语文成分,解释应限于条件关联。

理论与公式

两层随机截距(Raudenbush & Bryk)把第 j 班第 i 名学生写成

不含 X 的零模型给出无条件组内相关

本页 ICC = 0、τ00 = 0,表示在这张成绩表上几乎没有可估的班间基线差。中心化不改变「有没有随机截距」,但改变 γ10 的含义:总均值中心化后的斜率是相对全样本均值的;组均值中心化(CWC)后的斜率是班内关系,班级均值本身还可作为第二层预测因子去估情境效应。StatsX 不会替你减均值,需要哪种解释,就在上传前造好列。估计为混合模型极大似然(statsmodels MixedLM),固定效应用 z 近似。

注意事项

  • ICC 接近 0 应如实报告「班间方差可忽略」,不要为了显得「用了高级模型」而夸大班级效应。

  • 未中心化的语文成绩斜率混杂了班内关系与班间组成;论文若声称班内效应,必须先 CWC。

  • 第二层少于 10 个班时 τ00 的估计很吵,18 个班已经偏紧,本例方差被收到 0 并不奇怪。

  • 平均分与语文成绩有定义性重叠,显著斜率不是「发现了新机制」。

  • 学号、考场号会制造虚假的海量聚类,系统也会拒绝过高的聚类数。

  • 本页没有随机斜率:不能写「各班语文回报不同」。

常见问题

参考文献

  • Raudenbush, S. W., & Bryk, A. S. Hierarchical Linear Models: Applications and Data Analysis Methods. Sage.

  • Snijders, T. A. B., & Bosker, R. J. Multilevel Analysis: An Introduction to Basic and Advanced Multilevel Modeling. Sage.

  • 张雷, 雷雳, 郭伯良. 多层线性模型应用[M]. 教育科学出版社.

  • Enders, C. K., & Tofighi, D. Centering predictor variables in cross-sectional multilevel models[J]. Psychological Methods, 2007, 12(2): 121–138.