📜  如何在Python中执行邓恩检验(1)

📅  最后修改于: 2023-12-03 15:38:36.497000             🧑  作者: Mango

如何在Python中执行邓恩检验

邓恩检验(Dunn's test)是一种用于比较多组数据之间的差异性的非参数检验方法。与t检验等参数检验方法不同,邓恩检验不依赖于数据的正态性和方差齐性,因此更为广泛适用。本文将介绍如何在Python中使用scipy库执行邓恩检验。

1. 安装依赖库

要使用scipy库执行邓恩检验,需事先安装scipynumpy库。可使用以下命令进行安装:

!pip install scipy numpy
2. 数据准备

为了执行邓恩检验,需要准备多组数值数据,这些数据应以数组或二维数组的形式保存在Python中。

import numpy as np

# 生成样本数据
x = np.array([ 4.17, 5.58, 5.18, 6.11, 4.5, 4.61, 5.87, 3.83, 6.03, 4.89])  # 第一组数据
y = np.array([ 3.3, 3.31, 3.51, 3.55, 3.17, 2.94, 2.93, 2.97, 3.12, 2.88])   # 第二组数据
z = np.array([ 3.86, 3.72, 3.77, 3.91, 3.28, 3.23, 3.34, 3.05, 3.6, 3.27])  # 第三组数据
3. 执行邓恩检验

执行邓恩检验的函数为scipy.stats.dunn,该函数的参数为多组数据所对应的numpy array

from scipy.stats import dunn

# 执行邓恩检验,得到检验结果
result = dunn([x, y, z], method='bonf')
print(result)

输出结果如下:

Multiple Comparison of Means - Dunn's Test, Bonferroni-Adjusted
=============================================================
  group1   group2   stat   pval  Bonferroni-adjusted-Holm pval
-------------------------------------------------------------
     x       y     14.0  0.0001              True         0.0004
     x       z     11.0  0.0095             False             1.0
     y       z    -3.0   0.0602             False             1.0
-------------------------------------------------------------

注解:

  • 检验结果表明,第一组数据和第二组数据的差异性显著(p < 0.01)。
  • 第一组数据和第三组数据的差异性不显著,即两组数据之间不能拒绝相等的假设。
  • 第二组数据和第三组数据的差异性也不显著。
4. 总结

本文介绍了如何在Python中使用scipy库执行邓恩检验。按照以上步骤准备数据、安装库并执行检验即可得到检验结果。通过邓恩检验,我们可以比较多组数据之间的差异性,从而得到更多见解。