Dixon 的 q 检验:定义 + 示例


Dixon 的 Q 检验(通常简称为Q 检验)是一种统计检验,用于检测数据集中的异常值。

Q 检验统计量为:

Q = |x axb | /R

其中x a是可疑异常值, x b是最接近 x a的数据点, R是数据集的范围。大多数情况下,x a是数据集的最大值,但也可以是最小值。

需要注意的是,Q 检验通常在小数据集上进行,并且假设数据呈正态分布。还需要注意的是,对于给定的数据集,Q 检验只能执行一次。

如何手动执行 Dixon Q 检验

假设我们有以下数据集:

1, 3, 5, 7, 8, 9, 13, 25

我们可以按照标准的五步假设检验程序手动执行 Dixon’s Q 检验来确定该数据集中的最大值是否为异常值:

步骤 1. 陈述假设。

原假设 (H0):最大值不是异常值。

备择假设: (Ha):最大值异常值。

步骤 2. 确定要使用的显着性水平。

常见的选择是 0.1、0.05 和 0.01。在本例中,我们将使用 0.05 的显着性水平。

步骤 3. 求检验统计量。

Q = |x axb | /R

在本例中,最大值是 x a = 25,下一个最接近的值是 x b = 13,范围是 R = 25 – 1 = 24。

因此, Q = |25 – 13| / 24 = 0.5

然后我们可以将此检验统计量与关键 Q 检验值进行比较,如下所示,针对不同的样本量 (n) 和置信水平:

90% 95% 99%
3 0.941 0.970 0.994
4 0.765 0.829 0.926
5 0.642 0.710 0.821
6 0.560 0.625 0.740
7 0.507 0.568 0.680
8 0.468 0.526 0.634
9 0.437 0.493 0.598
10 0.412 0.466 0.568
11 0.392 0.444 0.542
12 0.376 0.426 0.522
13 0.361 0.410 0.503
14 0.349 0.396 0.488
15 0.338 0.384 0.475
16 0.329 0.374 0.463
17 0.320 0.365 0.452
18 0.313 0.356 0.442
19 0.306 0.349 0.433
20 0.300 0.342 0.425
21 0.295 0.337 0.418
22 0.290 0.331 0.411
23 0.285 0.326 0.404
24 0.281 0.321 0.399
25 0.277 0.317 0.393
26 0.273 0.312 0.388
27 0.269 0.308 0.384
28 0.266 0.305 0.380
29 0.263 0.301 0.376
30 0.260 0.290 0.372

样本数为 8、置信度为 95% 的临界值为0.526

步骤 4. 拒绝或不拒绝原假设。

由于我们的检验统计量 Q(0.5)小于临界值(0.526),因此我们无法拒绝原假设。

步骤 5. 解释结果。

由于我们未能拒绝原假设,因此我们得出结论,最大值25不是该数据集中的异常值。

如何在 R 中执行 Dixon 的 Q 检验

要在 R 中对同一数据集执行 Dixon 的 Q 检验,我们可以使用异常值库中的dixon.test()函数,该函数使用以下语法:

dixon.test(数据, , 类型 = 10, 相反 = FALSE)

  • 数据:数据值的数值向量
  • type:用于执行 Q 统计检验的公式类型。设置为 10 以使用前面描述的公式。
  • 相反:如果为 FALSE,则测试确定最大值是否为异常值。如果为 TRUE,则测试确定最小值是否为异常值。默认情况下这是 FALSE。

注意在此处查找 dixon.test() 的完整文档。

以下代码演示了如何执行 Dixon’s Q 检验来确定数据集中的最大值是否为异常值。

 #load the outliers library
library(outliers)

#create data
data <- c(1, 3, 5, 7, 8, 9, 13, 25)

#conduct Dixon's Q Test
dixon.test(data, type = 10)

# Dixon test for outliers
#
#data:data
#Q = 0.5, p-value = 0.06913
#alternative hypothesis: highest value 25 is an outlier

从结果中,我们可以看到检验统计量为 Q = 0.5 ,相应的 p 值为0.06913 。因此,我们未能拒绝 0.05 显着性水平的零假设,并得出结论: 25不是异常值。这与我们手动获得的结果相对应。

添加评论

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