R:具有异方差数据的混合模型 -> 只有 lm 函数有效吗?
R: mixed model with heteroscedastic data -> only lm function works?
This question 问了同样的问题,但没有得到回答。我的问题涉及如何使用 lm() 函数指定模型,因此是一个编程(非统计)问题。
我有一个混合设计(2 个重复预测变量和 1 个独立预测变量)。参与者首先被分为 A 组或 B 组(这是独立的预测变量),然后他们对他们喜欢 4 种不同陈述的程度进行评分(这是两个重复的预测变量)。
有很多很棒的在线资源可以帮助您对这些数据进行建模。但是,我的数据是异方差的。所以我喜欢使用异方差一致的协方差矩阵。 This paper explains it well. The sandwich and lmtest packages are great. Here 很好地解释了如何在 R 中使用 lm(y ~ x) 进行独立设计。
我好像用过lm,不然不行?
这里是回归模型的代码,假设所有方差都相等(它们不是 Levene 检验显着回归)。
fit3 <- nlme:::lme(DV ~ repeatedIV1*repeatedIV2*independentIV1, random = ~1|participants, df) ##works fine
这是纠正异方差的独立模型的代码,它有效。
fit3 <- lm(DV ~ independentIV1)
library(sandwich)
vcovHC(fit3, type = 'HC4', sandwich = F)
library(lmtest)
coef(fit3, vcov. = vcovHC, type = 'HC4')
所以我的问题真的是,如何用 lm 指定我的模型?
也欢迎使用 R 中的替代方法如何拟合我的模型来解释异方差性!
非常感谢!!!
我的印象是,您的问题来自混合不同方面的各种方法(重复 measurements/correlation 与异方差性),这些方法不能轻易混合。除了使用随机效应之外,您还可以考虑固定效应,或者不仅可以考虑调整异方差性的推断,还可以考虑高斯模型并对均值和方差等进行建模。对我来说,很难说这里的最佳路径是什么.因此,我只评论有关 sandwich
包的某些方面:
sandwich
包 不 仅限于 lm
/glm
但原则上它是面向对象的,请参阅 vignette("sandwich-OOP", package = "sandwich")
(也发布为 doi:10.18637/jss.v016.i09.
有适合多种多样的方法 packages/models 但不是
对于 nlme
或 lme4
。原因是通常的三明治技巧实际上对哪些混合效果模型有效并不那么明显。 (免责声明:但我不是混合效果建模方面的专家。)
但是,lme4
有一个相对较新的包
称为 merDeriv
(https://CRAN.R-project.org/package=merDeriv)
提供 estfun
和 bread
方法,以便 sandwich
协方差可以是
计算 lmer
输出等。还有一个相关的工作文件
使用该软件包:https://arxiv.org/abs/1612.04911
This question 问了同样的问题,但没有得到回答。我的问题涉及如何使用 lm() 函数指定模型,因此是一个编程(非统计)问题。
我有一个混合设计(2 个重复预测变量和 1 个独立预测变量)。参与者首先被分为 A 组或 B 组(这是独立的预测变量),然后他们对他们喜欢 4 种不同陈述的程度进行评分(这是两个重复的预测变量)。 有很多很棒的在线资源可以帮助您对这些数据进行建模。但是,我的数据是异方差的。所以我喜欢使用异方差一致的协方差矩阵。 This paper explains it well. The sandwich and lmtest packages are great. Here 很好地解释了如何在 R 中使用 lm(y ~ x) 进行独立设计。
我好像用过lm,不然不行?
这里是回归模型的代码,假设所有方差都相等(它们不是 Levene 检验显着回归)。
fit3 <- nlme:::lme(DV ~ repeatedIV1*repeatedIV2*independentIV1, random = ~1|participants, df) ##works fine
这是纠正异方差的独立模型的代码,它有效。
fit3 <- lm(DV ~ independentIV1)
library(sandwich)
vcovHC(fit3, type = 'HC4', sandwich = F)
library(lmtest)
coef(fit3, vcov. = vcovHC, type = 'HC4')
所以我的问题真的是,如何用 lm 指定我的模型? 也欢迎使用 R 中的替代方法如何拟合我的模型来解释异方差性!
非常感谢!!!
我的印象是,您的问题来自混合不同方面的各种方法(重复 measurements/correlation 与异方差性),这些方法不能轻易混合。除了使用随机效应之外,您还可以考虑固定效应,或者不仅可以考虑调整异方差性的推断,还可以考虑高斯模型并对均值和方差等进行建模。对我来说,很难说这里的最佳路径是什么.因此,我只评论有关 sandwich
包的某些方面:
sandwich
包 不 仅限于 lm
/glm
但原则上它是面向对象的,请参阅 vignette("sandwich-OOP", package = "sandwich")
(也发布为 doi:10.18637/jss.v016.i09.
有适合多种多样的方法 packages/models 但不是
对于 nlme
或 lme4
。原因是通常的三明治技巧实际上对哪些混合效果模型有效并不那么明显。 (免责声明:但我不是混合效果建模方面的专家。)
但是,lme4
有一个相对较新的包
称为 merDeriv
(https://CRAN.R-project.org/package=merDeriv)
提供 estfun
和 bread
方法,以便 sandwich
协方差可以是
计算 lmer
输出等。还有一个相关的工作文件
使用该软件包:https://arxiv.org/abs/1612.04911