好的,我在学校的教室里有学生。我想知道考试分数是否取决于你的学校。
我的基本模型是:
basemodel <- lmer(test ~ schoolnumber +
(1 | schoolnumber/classnumber), data=mydata)
我是否想尝试添加学生级别?
不能工作:
model1 <- lmer(test ~ schoolnumber +
(1 | schoolnumber/classnumber/ studentID), data=ED)
不能工作:
model2 <- lmer(test ~ schoolnumber +
(1 | schoolnumber/classnumber) +( 1 |studentID), data=ED)
不能工作:
model3 <- lmer(test ~ schoolnumber +
(1 + studentID | schoolnumber/classnumber), data=ED)
model4 <- lmer(test ~ schoolnumber + studentID +
(1 | schoolnumber/classnumber), data=ED)
当我添加学生证时,它说
Warning message:
In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
Model is nearly unidentifiable: very large eigenvalue
- Rescale variables?
此外,我当前的test
分数是从原始分数中获得的标准化分数,然后是z分数,然后是线性变换(标准分数); 100 + 15(z)
。
我可以使用这些线性变换分数,还是应该使用其他东西?我在其他地方看过使用scale()的代码吗?
答案 0 :(得分:0)
正如Roland所说,如果schoolnumber
是分类/因子变量,那么你的第一个模型应该失败:
~ schoolnumber + (1 | schoolnumber/classnumber)
包括schoolnumber
作为固定分类预测变量和随机效应分组变量。 ~ (1|schoolnumber/classnumber)
会更有意义。
如果你摆脱schoolnumber
作为固定效应预测器,那么</ p>
~ (1 | schoolnumber/classnumber) + (1|studentID)
应该工作。我不建议将studentID
添加为固定效果。
我假设学生的标签是唯一的,即学校1号学生1A57
和学校2号学生1A57
不同...... / p>
您在每个级别(观察,学生,班级,学校)的数据集有多大?我猜测学生是在学校里面嵌套但是在课堂上交叉,即每个学生只在一所学校但在一个以上的班级。只要你有独特的学生标记,你就可以像指定模型一样重要。