单向方差分析错误:无法获得R以提供与GraphPad和Hand Calculation相同的值

时间:2019-06-09 17:06:44

标签: r anova

我正在尝试为在线测验创建答案键,以手动计算平衡的单向ANVOA。我使用R来检查数学,但是R在组之间和组内都返回了不同的SS值(因此也返回了MS和F值)。我已经多次检查了手计算,但没有发现任何错误。我还根据GraphPad检查了我的数学运算; GraphPad返回我正在手工计算的相同值。我假设我的R代码中某处有错误,但是我需要帮助找到它。

我使用aov(),anova()和ezANOVA()函数在R中运行ANOVA,它们均返回14.98之间的SS,0.62以内的SS和254.22的F值。但是,当手动计算并在GraphPad中进行计算时,我得到的SS在15.19之间,SS在.64之内,F值为251.2。

数据在data.frame QuizData中为长格式(24行)。 IV是一个具有3个级别的因子,ID只是每个分数的ID号,而DV是数字数据(请参见下文)。

> QuizData
# A tibble: 24 x 3
   IV       ID    DV
   <fct> <int> <dbl>
 1 L1        1   0.9
 2 L1        2   0.7
 3 L1        3   1.2
 4 L1        4   0.7
 5 L1        5   0.7
 6 L1        6   0.9
 7 L1        7   0.9
 8 L1        8   0.8
 9 L2        9   1.6
10 L2       10   1.5
# ... with 14 more rows
> QuizData[1:12,]
# A tibble: 12 x 3
   IV       ID    DV
   <fct> <int> <dbl>
 1 L1        1   0.9
 2 L1        2   0.7
 3 L1        3   1.2
 4 L1        4   0.7
 5 L1        5   0.7
 6 L1        6   0.9
 7 L1        7   0.9
 8 L1        8   0.8
 9 L2        9   1.6
10 L2       10   1.5
11 L2       11   1.6
12 L2       12   1.5
> QuizData[13:24,]
# A tibble: 12 x 3
   IV       ID    DV
   <fct> <int> <dbl>
 1 L2       13   1.8
 2 L2       14   1.7
 3 L2       15   1.5
 4 L2       16   1.2
 5 L3       17   2.5
 6 L3       18   2.9
 7 L3       19   2.8
 8 L3       20   3  
 9 L3       21   2.7
10 L3       22   2.7
11 L3       23   2.6
12 L3       24   2.9

我的ANOVA代码如下:

aov.results = aov(DV~IV, data = QuizData)
summary(aov.results)

anova(lm(DV~IV, data = QuizData))

library(ez)
ezANOVA(data = QuizData,
    dv = DV,
    wid = ID,
    between = IV, 
    type = 2)

与GraphPad和我的手计算相比,R值略有偏离(以下输出)。

> aov.results = aov(DV~IV, data = QuizData)
> summary(aov.results)
            Df Sum Sq Mean Sq F value   Pr(>F)    
IV           2 14.981   7.490   254.2 1.92e-15 ***
Residuals   21  0.619   0.029                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
> anova(lm(DV~IV, data = QuizData))
Analysis of Variance Table

Response: DV
          Df  Sum Sq Mean Sq F value   Pr(>F)    
IV         2 14.9808  7.4904  254.22 1.92e-15 ***
Residuals 21  0.6187  0.0295                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
> ezANOVA(data = QuizData,
+         dv = DV,
+         wid = ID,
+         between = IV, 
+         type = 2)
Warning: Converting "ID" to factor for ANOVA.
Coefficient covariances computed by hccm()
$ANOVA
  Effect DFn DFd        F            p p<.05       ges
1     IV   2  21 254.2202 1.919655e-15     * 0.9603355

$`Levene's Test for Homogeneity of Variance`
  DFn DFd          SSn     SSd    F         p p<.05
1   2  21 0.0008333333 0.21875 0.04 0.9608625

我找不到R哪里出问题了,我需要知道这种差异的原因。

0 个答案:

没有答案