簡體   English   中英

為什么在 R 中使用 summar(aov) 和 anova_test 時得到不同的統計數據?

[英]Why do I get different stats when using summar(aov) and anova_test in R?

這是一個 R-stats 問題。 我有很多學科的數據。 我的因變量是一些血液測量值,比方說白細胞計數(cont 變量)。 bc = 5.6 我感興趣的自變量是組,Dx,(3 個水平:控制、抑郁、緩解)。 我想“糾正”(添加協變量)、年齡(續)和性別(二進制)。

這給了我公式:

myform_aov <- as.formula(sprintf("%s ~ %s + %s + %s", current_bc, "age","gender", "Dx"))

如果我將這個公式輸入

anova <- summary(aov(myform_aov, data = data))

res.ancova <- data %>% anova_test(myform_aov)

我得到(稍微)不同的結果。 這是為什么,用哪個更正確?

summary( aov ())和anova_test (())有什么區別?

aov: Dx,p-val: 0.2377 年齡,p-val: 0.018 性別,p-val: 0.04

anova_test: Dx,p-val:0.238 年齡,p-val:0.014 性別,p-val:0.06

默認情況下, anova_test()正在執行 II 型測試aov()正在執行 I 型測試。 您可以通過指定type=1使anova_test()aov() () 具有可比性。

library(ggplot2)
library(rstatix)

form <- qsec ~ as.factor(cyl) + hp

anova_test(data=mtcars, form )
#> Coefficient covariances computed by hccm()
#> ANOVA Table (type II tests)
#> 
#>           Effect DFn DFd     F     p p<.05   ges
#> 1 as.factor(cyl)   2  28 0.287 0.753       0.020
#> 2             hp   1  28 9.286 0.005     * 0.249
summary(aov(form, data=mtcars))
#>                Df Sum Sq Mean Sq F value   Pr(>F)    
#> as.factor(cyl)  2  34.61  17.303  10.021 0.000522 ***
#> hp              1  16.03  16.034   9.286 0.004995 ** 
#> Residuals      28  48.35   1.727                     
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
anova_test(data=mtcars, form, type=1)
#> ANOVA Table (type I tests)
#> 
#>           Effect DFn DFd      F        p p<.05   ges
#> 1 as.factor(cyl)   2  28 10.021 0.000522     * 0.417
#> 2             hp   1  28  9.286 0.005000     * 0.249

reprex package (v2.0.1) 創建於 2023-01-17

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM