|
前言自学笔记,分享给对统计学原理不太清楚但需要在论文中用到的小伙伴,欢迎大佬们补充或绕道。ps:本文不涉及公式讲解(文科生小白友好体质)~(部分定义等来源于知乎百度等)本文重点:Kruskal-Wallis检验(Kruskal-Wallistest),也称H检验【1.定义和简单原理】【2.应用条件】【3.数据实例以及Python代码】【4.多重比较(例:Dunn检验)】1.定义和简单原理Kruskal-Wallis检验(Kruskal-Wallistest),也称为克鲁斯卡尔-沃利斯检验或H检验,是一种非参数检验方法,用于比较三个或更多独立样本的差异。它可以看作是Mann-WhitneyU检验的扩展。 补充1:Mann-WhitneyU检验适用于两组数据,Kruskal-Wallis检验适用于三组及以上数据【Python・统计学】Mann-WhitneyU检验/Wilcoxon秩和检验(原理及代码)https://mp.csdn.net/mp_blog/creation/editor/138028894Kruskal-Wallis检验的基本思想是,如果各组样本来自同一总体,那么各组样本的秩和应该相近。具体步骤如下:将所有样本的数据合并,并按照从小到大的顺序排列,记录每个数据点的秩(排名)。对每个组内的秩求和,计算每个组的平均秩。如果各组样本来自同一总体,那么各组的平均秩应该相近。如果某些组的平均秩明显偏高或偏低,则可能表明这些组与其他组存在显著差异。计算Kruskal-Wallis检验的统计量H,并根据H的值和自由度,查表或计算p值,以判断是否拒绝原假设。2.应用条件数据是独立的随机样本,各组之间相互独立。数据至少是顺序尺度的,即可以比较大小,但不要求数值之间的差异有意义。各组样本不必服从正态分布,也不要求方差齐性。各组样本的分布形状相似(如都是偏态分布或都是对称分布),但不要求完全一致。3.数据实例以及Python代码假设我们想比较三种不同教学方法(A、B、C)对学生数学成绩的影响。我们随机选择了一些学生,分别接受这三种教学方法,并记录他们的数学成绩(满分100分)。数据如下:methodA=[85,92,78,88,90,82,84,80]methodB=[75,80,82,74,79,76,81]methodC=[90,87,92,93,88,91,85,89,94]'运行运行fromscipy.statsimportkruskal#三组学生的数学成绩methodA=[85,92,78,88,90,82,84,80]methodB=[75,80,82,74,79,76,81]methodC=[90,87,92,93,88,91,85,89,94]#进行Kruskal-Wallis检验statistic,p_value=kruskal(methodA,methodB,methodC)print(f'检验统计量为:{statistic}')print(f'p值为:{p_value}')ifp_value0.05)。组A与组C的数学成绩没有显著差异(p=0.9698684800000001>0.05)。组B与组C的数学成绩存在显著差异(p=0.001467466666666643
|
|