如何从R中的aov输出中提取p值和F统计量?

方差分析技术可帮助我们确定两个以上变量之间是否存在显着的均值差。为了检测这种差异,我们可以使用F统计值或p值。如果F统计值大于F的临界值,或者p值小于显着性水平,那么我们说至少一种方法与其余方法显着不同。要提取p值和F统计值,我们可以利用ANOVA模型的摘要功能。

示例

set.seed(123)

Group<-rep(c("G1","G2","G3","G4"),times=5)

Response<-runif(20,2,5)

df<-data.frame(Group,Response)

df

输出结果

Group Response

1 G1 2.862733

2 G2 4.364915

3 G3 3.226931

4 G4 4.649052

5 G1 4.821402

6 G2 2.136669

7 G3 3.584316

8 G4 4.677257

9 G1 3.654305

10 G2 3.369844

11 G3 4.870500

12 G4 3.360002

13 G1 4.032712

14 G2 3.717900

15 G3 2.308774

16 G4 4.699475

17 G1 2.738263

18 G2 2.126179

19 G3 2.983762

20 G4 4.863511

ANOVA<-aov(Response~Group,df)

summary(ANOVA)

Df Sum Sq Mean Sq F value Pr(F)

Group 3 4.813 1.6043 2.141 0.135

Residuals 16 11.990 0.7494

summary(ANOVA)[[1]][1,4:5]

F value Pr(F)

Group 2.1408 0.1351

如果我们只想提取p值,则可以如下所示进行操作-

summary(ANOVA)[[1]][1,5]

[1] 0.1351315

如果我们只想提取F值,则可以如下所示进行操作-

summary(ANOVA)[[1]][1,4]

[1] 2.140825

示例

让我们再看一个例子-

Factor<-rep(c("F1","F2","F3","F4","F5"),each=4)

Dependent<-rnorm(20,2)

ANOVA_data<-data.frame(Factor,Dependent)

ANOVA_data

输出结果

Factor Dependent

1 F1 2.2236414

2 F1 4.0072015

3 F1 3.0119791

4 F1 1.6975408

5 F2 0.9747552

6 F2 1.7326152

7 F2 1.8008943

8 F2 2.1311226

9 F3 2.1457999

10 F3 2.3620647

11 F3 2.6739812

12 F3 4.0720358

13 F4 1.4589714

14 F4 0.9295078

15 F4 1.6275433

16 F4 1.5148586

17 F5 2.2747842

18 F5 1.5204874

19 F5 2.7981053

20 F5 0.9955488

ANOVA_Model<-aov(Dependent~Factor,ANOVA_data)

summary(ANOVA_Model)

Df Sum Sq Mean Sq F value Pr(F)

Factor 4 6.647 1.6617 3.04 0.0508 .

Residuals 15 8.200 0.5467

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

summary(ANOVA_Model)[[1]][1,4:5]

F value Pr(F)

Factor 3.0395 0.05078 .

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

summary(ANOVA_Model)[[1]][1,5]

[1] 0.05077798

summary(ANOVA_Model)[[1]][1,4]

[1] 3.039549

以上是 如何从R中的aov输出中提取p值和F统计量? 的全部内容, 来源链接: utcz.com/z/362100.html

回到顶部