R 编程中的 Fligner-Killeen 测试
Fligner-Killeen检验是基于等级的组方差同质性的非参数检验。当数据非正态分布或无法解决与数据集中异常值相关的问题时,它很有用。它也是众多方差同质性检验之一,对偏离正态性最有效。有几种解决方案可以测试组间方差的相等性(同质性),包括:
- F检验
- 巴特利特试验
- 列文的测试
- Fligner-Killeen 测试
在 R 编程中执行这些测试非常容易。在本文中,让我们在 R 中执行Fligner-Killeen 测试。
Fligner-Killeen 检验的统计假设
一个假设 是 一种 关于给定问题的陈述。假设检验是一种统计方法,用于使用实验数据做出统计决策。假设检验基本上是我们对总体参数所做的假设。它评估关于总体的两个相互排斥的陈述,以确定样本数据最能支持哪个陈述。要了解有关统计假设的更多信息,请参阅了解假设检验。对于Fligner-Killeen 检验,统计假设为:
- 零假设:所有总体方差都相等
- 替代假设:至少有两个不同
R中的实现
R提供了一个函数 fligner.test()在stats包中可用,可用于计算Fligner-Killeen 测试。该函数的语法如下:
Syntax:
fligner.test(formula, dataset)
Parameters:
formula: a formula of the form values ~ groups
dataset: a matrix or data frame
Fligner-Killeen 测试示例
具有一个自变量的 Fligner-Killeen 检验:
考虑 R 的内置PlantGrowth数据集,该数据集给出了三组十批次植物的干重,其中每十批次的每组都进行了不同的处理。权重变量给出批次的权重,组变量给出收到的处理ctrl、trt1 或 trt2 。要查看数据集,请键入以下命令:
R
print(PlantGrowth)
R
# R program to illustrate
# Fligner-Killeen test
# Import required package
library(stats)
# Using fligner.test()
result = fligner.test(weight ~ group, PlantGrowth)
# print the result
print(result)
R
# R program to illustrate
# Fligner-Killeen test
# Import required package
library(stats)
# Using fligner.test()
result = fligner.test(len ~ interaction(supp, dose),
data = ToothGrowth)
# print the result
print(result)
输出:
weight group
1 4.17 ctrl
2 5.58 ctrl
3 5.18 ctrl
4 6.11 ctrl
5 4.50 ctrl
6 4.61 ctrl
7 5.17 ctrl
8 4.53 ctrl
9 5.33 ctrl
10 5.14 ctrl
11 4.81 trt1
12 4.17 trt1
13 4.41 trt1
14 3.59 trt1
15 5.87 trt1
16 3.83 trt1
17 6.03 trt1
18 4.89 trt1
19 4.32 trt1
20 4.69 trt1
21 6.31 trt2
22 5.12 trt2
23 5.54 trt2
24 5.50 trt2
25 5.37 trt2
26 5.29 trt2
27 4.92 trt2
28 6.15 trt2
29 5.80 trt2
30 5.26 trt2
如上所述, Fligner-Killeen 测试 当数据非正态分布或无法解决与数据集中异常值相关的问题时非常有用。这里我们只考虑一个自变量。要执行测试,请使用以下命令:
R
# R program to illustrate
# Fligner-Killeen test
# Import required package
library(stats)
# Using fligner.test()
result = fligner.test(weight ~ group, PlantGrowth)
# print the result
print(result)
输出:
Fligner-Killeen test of homogeneity of variances
data: weight by group
Fligner-Killeen:med chi-squared = 2.3499, df = 2, p-value = 0.3088
具有多个自变量的 Fligner-Killeen 检验:
如果一个人想与多个独立的人一起做测试 变量,则必须函数交互()函数将多个因子折叠为包含所有因子组合的单个变量。这里让我们以 R 的内置ToothGrowth数据集为例。
R
# R program to illustrate
# Fligner-Killeen test
# Import required package
library(stats)
# Using fligner.test()
result = fligner.test(len ~ interaction(supp, dose),
data = ToothGrowth)
# print the result
print(result)
输出:
Fligner-Killeen test of homogeneity of variances
data: len by interaction(supp, dose)
Fligner-Killeen:med chi-squared = 7.7488, df = 5, p-value = 0.1706