首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在虚拟变量中使用emmeans

在虚拟变量中使用emmeans
EN

Stack Overflow用户
提问于 2022-11-10 10:20:16
回答 1查看 30关注 0票数 0

我有这样的数据:

代码语言:javascript
复制
dat <- data.frame(ID = rep(1:4, each = 4),
                  score = c(0, 0, -3, -5, 0, -4, -4, -4, -1, -1, -2, -3, 0, 1, -2, -2),
                  visit1 = c(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0), 
                  visit2 = c(0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0), 
                  visit4 = c(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
                  visit = c(v1, v1, v1, v1, v2, v2, v2, v2, v3, v3, v3, v3, v4, v4, v4, v4),
                  trt = c(A, A, A, A, A, A, A, A, P, P, P, P, P, P, P, P))

现在,我使用mmrm包(https://cran.r-project.org/web/packages/mmrm/index.html)安装了一个混合模型重复度量,如下所示:

代码语言:javascript
复制
fit <- mmrm(formula = score ~ visit1 + visit2 + visit4 + visit2:trt + visit4:trt + us(ID | visit), data = dat)

我感兴趣的是,在最近一次访问(访问4/V4)的治疗组的LS方法和这方面的对比。使用下面的模型fit2 <- mmrm(formula = score ~ visit + visit:trt + us(ID | visit), data = dat),我可以简单地执行emmeans(m1, specs = pairwise ~ treat | visit)。但是,如果我尝试为访问使用0/1变量(visit1、visit2和visit4),则会得到一个错误:Error in h_df_1d_list(est = est, var = var, v_num = v_num, v_denom = v_denom) : Assertion on 'var' failed: Element 1 is not >= 2.22507e-308.

关于这一切,我有两个问题:

  1. ,错误信息意味着什么?
  2. ,我如何得到LS均值,以及在最后一次测量时在治疗组之间和治疗组之间的对比(visit4),如果我想使用模型和虚拟变量进行访问?
EN

回答 1

Stack Overflow用户

发布于 2022-11-10 21:42:09

这失败了,因为模型中没有名为visit的预测器。

emmeans()将不使用虚拟变量作为预测器。emmeans()的设计是对所有预测值的组合使用一个参考网格,例如,对visit1 = 1visit2 = 1进行预测是没有意义的。

重新调整你的模型,用因素作为预测因子。或者使用score作为多变量响应。我不知道mmrm()需要什么,但是如果它不支持这些可能性之一,它应该支持。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74387384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档