R lsmeans调整多重比较
R lsmeans adjust multiple comparison
我在 R 中使用 lme4 运行 混合效应 logistig 回归(通过调用 glmer),现在我正在尝试进行 post-hoc 比较。因为它们是成对的,Tukey 应该没问题,但我想手动调整应该进行校正的测试次数 - 现在它是针对 12 次测试进行的,但我只对 6 次比较感兴趣。
到目前为止我的代码看起来像这样
for (i in seq_along(logmixed_ranks)) {
print(lsmeans(logmixed_ranks[[i]], pairwise~rating_ranks*indicator_var, adjust="tukey"))
}
我可能需要以某种方式使用以下内容,但我不确定如何使用。
p.adjust(p, method = p.adjust.methods, n = length(p))
有人可以帮忙吗?
谢谢!
劳拉
您想要仅针对 6 次比较进行调整肯定是有原因的,我猜是因为您想根据其中一个因素有条件地分解您正在进行的比较。使用 lsmeans
:
很容易做到这一点
lsmeans(logmixed_ranks[[i]],
pairwise ~ rating_ranks | indicator_var, adjust = "tukey")
或
lsmeans(logmixed_ranks[[i]],
pairwise ~ indicator_var | rating_ranks, adjust = "tukey")
顺便说一下,如果您使用 adjust = "mvt"
,您将获得与 glht
用于其单步程序的完全相同的调整。所以我相信 lsmeans
不支持的唯一 glht
功能是多步测试。
我很困惑为什么你有一个 glmer
对象的列表,但这似乎与我的回答无关。
我在 R 中使用 lme4 运行 混合效应 logistig 回归(通过调用 glmer),现在我正在尝试进行 post-hoc 比较。因为它们是成对的,Tukey 应该没问题,但我想手动调整应该进行校正的测试次数 - 现在它是针对 12 次测试进行的,但我只对 6 次比较感兴趣。
到目前为止我的代码看起来像这样
for (i in seq_along(logmixed_ranks)) {
print(lsmeans(logmixed_ranks[[i]], pairwise~rating_ranks*indicator_var, adjust="tukey"))
}
我可能需要以某种方式使用以下内容,但我不确定如何使用。
p.adjust(p, method = p.adjust.methods, n = length(p))
有人可以帮忙吗? 谢谢! 劳拉
您想要仅针对 6 次比较进行调整肯定是有原因的,我猜是因为您想根据其中一个因素有条件地分解您正在进行的比较。使用 lsmeans
:
lsmeans(logmixed_ranks[[i]],
pairwise ~ rating_ranks | indicator_var, adjust = "tukey")
或
lsmeans(logmixed_ranks[[i]],
pairwise ~ indicator_var | rating_ranks, adjust = "tukey")
顺便说一下,如果您使用 adjust = "mvt"
,您将获得与 glht
用于其单步程序的完全相同的调整。所以我相信 lsmeans
不支持的唯一 glht
功能是多步测试。
我很困惑为什么你有一个 glmer
对象的列表,但这似乎与我的回答无关。