如何在 r 中执行 welch 方差分析(逐步)


当不满足方差相等假设时,韦尔奇方差分析是典型单向方差分析的一种替代方法。

以下分步示例展示了如何在 R 中执行 Welch 方差分析。

第 1 步:创建数据

为了确定三种不同的学习技巧是否会导致不同的考试结果,教授随机分配 10 名学生使用每种技巧(技巧 A、B 或 C)一周,然后为每个学生提供同等难度的测试。

30名同学的考试成绩如下:

 #create data frame
df <-data. frame (group = rep (c(' A ', ' B ', ' C '), each =10),
                score = c(64, 66, 68, 75, 78, 94, 98, 79, 71, 80,
                          91, 92, 93, 85, 87, 84, 82, 88, 95, 96,
                          79, 78, 88, 94, 92, 85, 83, 85, 82, 81))

#view first six rows of data frame
head(df)

   group score
1 to 64
2 to 66
3 to 68
4 to 75
5 to 78
6 to 94

第 2 步:等差检验

接下来,我们可以执行Bartlett 检验来确定每组之间的方差是否相等。

如果检验统计量的p 值低于一定的显着性水平(例如 α = 0.05),那么我们可以拒绝原假设并得出结论:并非所有组都具有相同的方差。

要执行 Bartlett 测试,我们可以使用基本 R 中的bartlett.test函数,该函数使用以下语法:

bartlett.test(公式,数据)

以下是在我们的示例中使用此函数的方法:

 #perform Bartlett's test
bartlett. test (score ~ group, data = df)

	Bartlett test of homogeneity of variances

data: score by group
Bartlett's K-squared = 8.1066, df = 2, p-value = 0.01737

Bartlett 检验的 p 值 ( .01737 ) 小于 α = .05,这意味着我们可以拒绝每个组具有相同方差的原假设。

因此,方差相等的假设被违反,我们可以继续进行韦尔奇方差分析。

第 3 步:执行韦尔奇方差分析

要在 R 中执行 Welch 方差分析,我们可以使用 R 基oneway.test()函数,如下所示:

 #perform Welch's ANOVA
oneway. test (score ~ group, data = df, var. equal = FALSE )

	One-way analysis of means (not assuming equal variances)

data: score and group
F = 5.3492, num df = 2.00, denom df = 16.83, p-value = 0.01591

方差分析表的总体 p 值 ( 0.01591 ) 小于 α = 0.05,这意味着我们可以拒绝三种研究技术之间的考试结果相同的原假设。

然后,我们可以执行事后检验来确定哪些组均值不同。请参阅以下教程,了解如何在 R 中执行各种事后测试:

查看本教程,根据您的情况确定最适合使用哪种事后测试。

其他资源

如何在 R 中执行单向方差分析
如何在 R 中执行双向方差分析
如何在 R 中执行重复测量方差分析

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注