5 级 HLM 分析

5-level HLM analysis

我正在尝试分析五个不同级别的层次结构,在这些层次结构中可能会汇总学生对教师的评分。

教师评分是从每个 class 每学期注册的学生那里收集的。

评分 (level1) 嵌套在学生 (level2) 中,学生本身嵌套在部分 ( level3) 或 classes (level4),它们也嵌套在更高层级中。

lmer 函数或其他函数可以处理这样的分析吗?

如果是,语法是什么?

让我们定义一些您在 post 中没有提供的符号:

Y = 评分
ID = 学号
section = class 节
class = class

我还假设您是说学生在 classes 和部分之间 cross-classified。在 lme4 中,我们通常假设交叉 class 化是独立的。

然后你有:

lm1 <- lmer(Y ~ <FE vars> + (1|class/ID) + (1|section/ID), data= df)

这里我们使用 / 来表示层次结构的级别(例如 section/ID),更高级别位于斜线左侧。更多级别将是 XYZ/section/ID。此外,不同的 () 元素显示交叉 class 化。您也可以使用 (class || section)(1|...) 表示随机截距但没有随机斜率。

注:

所有这些信息都在 vignette 中,我们鼓励您阅读。

如果所有级别都按照问题的建议真正嵌套(即不是交叉class化:每个评分都是由一个学生完成的,每个学生正好在一个部分,每个部分正好在一个 class ...),那么具体的答案是你想包括

(1|class/section/student/rating)

作为 lmer 模型中的随机效应项。

如果您有更多级别,您可以使用包含更高级别的扩展版本,例如

(1|toplevel/nextlevel/nextlevel2/.../bottomlevel)

正如@Alex 所建议的,这在小插图(Table 2,第 6 页)中有所描述,尽管它在示例中仅显示了两层嵌套。

@Alex 还建议您的数据可能会交叉 class 化 - 学生可能会提供不止一个 class 的评分 - 在这种情况下,您可能需要添加其他术语,例如

(1|class/section/student/rating) + (1|student)

将允许学生在不同的 class 学科和学科中产生一致的影响。

lme 函数(在 nlme 包中)也可以处理任意数量的嵌套级别,尽管处理交叉 class 化更难(而且很可能对于大型数据集,比 lmer 慢。