0

我正在审查一种方法方差分析并尝试整合最小二乘均值。这是 mtcars 的一个例子。

mtcars.mod <- mutate(mtcars, cyl.chr = case_when(
  cyl == 4 ~ "A",
  cyl == 6 ~ "B",
  cyl == 8 ~ "C"
))

library(lsmeans)

model <- lm(mpg ~ cyl.chr, data = mtcars.mod)
lsmeans(model, 
             ~ cyl.chr,
             adjust = "sidak")

我的输出是这样的:

 cyl.chr lsmean    SE df lower.CL upper.CL
 A         26.7 0.972 29     24.2     29.1
 B         19.7 1.218 29     16.7     22.8
 C         15.1 0.861 29     12.9     17.3

我试图得到看起来像这样的东西(值不能反映真实数据;它们是来自https://rcompanion.org/handbook/G_06.html的填充物/示例):

$contrasts
 contrast         estimate        SE df    z.ratio p.value
 A - B            4.943822 1.3764706 NA  3.5916658  0.0010
 A - C            0.633731 0.9055691 NA  0.6998152  0.7636
 B - C           -4.310091 1.3173294 NA -3.2718403  0.0031

P value adjustment: tukey method for comparing a family of 3 estimates

   ### Remember to ignore “estimate” and “SE” of differences with CLM,
   ###   as well as “lsmeans” in the output not shown here

我错过了什么?

4

2 回答 2

1

这就是功能的工作tukeyHSD

TukeyHSD(aov(model))
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = model)

$cyl.chr
          diff        lwr        upr     p adj
B-A  -6.920779 -10.769350 -3.0722086 0.0003424
C-A -11.563636 -14.770779 -8.3564942 0.0000000
C-B  -4.642857  -8.327583 -0.9581313 0.0112287
于 2021-04-16T17:21:46.343 回答
1

'emmeans' 包是'lsmeans' 的继承者。以下是如何将它用于您的问题:

library(emmeans)
model.emmeans <- emmeans(model, "cyl.chr")
pairs(model.emmeans)

但是对于只有一个因素的 ANOVA 模型(单向 ANOVA),这给出了与 相同的结果TukeyHSD

于 2021-04-16T20:52:35.980 回答