如何在emmeans中指定percent的8、10、13取值进行预测?
解决方法
你可以通过emmeans()函数的at参数,直接指定percent的目标取值来获取对应预测结果,具体实现有两种常用方式:
方式一:直接在emmeans中指定取值
library(emmeans) mod <- lm(conc~source + percent, data=pigs) # 指定percent为8、10、13,计算对应预测均值 emmeans(mod, "percent", at = list(percent = c(8, 10, 13)))
方式二:先构建参考网格再计算
如果需要更灵活的变量设置,可以先用ref_grid()创建包含指定值的参考网格,再基于网格计算均值估计:
rg <- ref_grid(mod, at = list(percent = c(8, 10, 13))) emmeans(rg, "percent")
补充说明
at参数的作用是替换模型中连续变量的原始观测值,使用你指定的数值进行预测。- 由于
percent是连续变量,运行上述代码后,会输出对应取值下的预测均值(emmean)、标准误(SE)、自由度(df)以及置信区间(lower.CL/upper.CL),完全符合你的需求。
内容的提问来源于stack exchange,提问作者locus
相关产品推荐
相关产品推荐

