跳转到主内容
跳转到主内容

mannWhitneyUTest

mannWhitneyUTest

引入于:v21.1

对来自两个总体的样本应用 Mann-Whitney 秩检验。

两个样本的取值都在 sample_data 列中。 如果 sample_index 等于 0,则该行中的值属于来自第一个总体的样本。 否则,该值属于来自第二个总体的样本。 原假设是两个总体在分布上相同。 也可以进行单侧假设检验。 该检验不假定数据服从正态分布。

语法

mannWhitneyUTest[(alternative[, continuity_correction])](sample_data, sample_index)

参数

  • alternative — 可选。备择假设。'two-sided'(默认):两个总体在随机意义上不相同。'greater':第一个样本中的值在随机意义上大于第二个样本中的值。'less':第一个样本中的值在随机意义上小于第二个样本中的值。String
  • continuity_correction — 可选。如果不为 0,则在计算 p 值的正态近似时应用连续性校正。默认值为 1。UInt64

参数说明

返回值

返回一个包含两个元素的元组:计算得到的 U 统计量和计算得到的 p 值。Tuple(Float64, Float64)

示例

Mann-Whitney U 检验示例

CREATE TABLE mww_ttest (sample_data Float64, sample_index UInt8) ENGINE = Memory;
INSERT INTO mww_ttest VALUES (10, 0), (11, 0), (12, 0), (1, 1), (2, 1), (3, 1);

SELECT mannWhitneyUTest('greater')(sample_data, sample_index) FROM mww_ttest;
┌─mannWhitneyUTest('greater')(sample_data, sample_index)─┐
│ (9,0.04042779918503192)                                │
└────────────────────────────────────────────────────────┘

另请参阅