kruskalwallis

Тест Краскэл-Уоллиса

Описание

пример

p = kruskalwallis(x) возвращает p - значение для нулевой гипотезы что данные в каждом столбце матричного x прибывает из того же распределения, с помощью теста Краскэл-Уоллиса. Альтернативная гипотеза - то, что не все выборки прибывают из того же распределения. kruskalwallis также возвращает таблицу ANOVA и диаграмму.

пример

p = kruskalwallis(x,group) возвращает p - значение для теста нулевой гипотезы что данные в каждой категориальной группе, как задано сгруппированной переменной group прибывает из того же распределения. Альтернативная гипотеза - то, что не все группы происходят из того же распределения.

пример

p = kruskalwallis(x,group,displayopt) возвращает p - значение теста и позволяет вам отобразить или подавить таблицу ANOVA и диаграмму.

пример

[p,tbl,stats] = kruskalwallis(___) также возвращает таблицу ANOVA как массив ячеек tbl и структура stats содержа информацию о тестовой статистике.

Примеры

свернуть все

Создайте два различных объекта нормального распределения вероятностей. Первое распределение имеет mu = 0 и sigma = 1, и второе распределение имеет mu = 2 и sigma = 1.

pd1 = makedist('Normal');
pd2 = makedist('Normal','mu',2,'sigma',1);

Создайте матрицу выборочных данных путем генерации случайных чисел от этих двух распределений.

rng('default'); % for reproducibility
x = [random(pd1,20,2),random(pd2,20,1)];

Первые два столбца x содержите данные, сгенерированные от первого распределения, в то время как третий столбец содержит данные, сгенерированные от второго распределения.

Протестируйте нулевую гипотезу что выборочные данные из каждого столбца в x прибывает из того же распределения.

p = kruskalwallis(x)

Figure Kruskal-Wallis One-way ANOVA contains objects of type uicontrol.

Figure contains an axes. The axes contains 21 objects of type line.

p = 3.6896e-06

Возвращенное значение p указывает на тот kruskalwallis отклоняет нулевую гипотезу, что все три выборки данных прибывают из того же распределения на 1%-м уровне значения. Таблица ANOVA обеспечивает дополнительные результаты испытаний, и диаграмма визуально представляет итоговую статистику для каждого столбца в x.

Создайте два различных объекта нормального распределения вероятностей. Первое распределение имеет mu = 0 и sigma = 1. Второе распределение имеет mu = 2 и sigma = 1.

pd1 = makedist('Normal');
pd2 = makedist('Normal','mu',2,'sigma',1);

Создайте матрицу выборочных данных путем генерации случайных чисел от этих двух распределений.

rng('default'); % for reproducibility
x = [random(pd1,20,2),random(pd2,20,1)];

Первые два столбца x содержите данные, сгенерированные от первого распределения, в то время как третий столбец содержит данные, сгенерированные от второго распределения.

Протестируйте нулевую гипотезу что выборочные данные из каждого столбца в x прибывает из того же распределения. Подавите выходные отображения и сгенерируйте структуру stats использовать в дальнейшем тестировании.

[p,tbl,stats] = kruskalwallis(x,[],'off')
p = 3.6896e-06
tbl=4×6 cell array
  Columns 1 through 5

    {'Source' }    {'SS'        }    {'df'}    {'MS'        }    {'Chi-sq'  }
    {'Columns'}    {[7.6311e+03]}    {[ 2]}    {[3.8155e+03]}    {[ 25.0200]}
    {'Error'  }    {[1.0364e+04]}    {[57]}    {[  181.8228]}    {0x0 double}
    {'Total'  }    {[     17995]}    {[59]}    {0x0 double  }    {0x0 double}

  Column 6

    {'Prob>Chi-sq'}
    {[ 3.6896e-06]}
    {0x0 double   }
    {0x0 double   }

stats = struct with fields:
       gnames: [3x1 char]
            n: [20 20 20]
       source: 'kruskalwallis'
    meanranks: [26.7500 18.9500 45.8000]
         sumt: 0

Возвращенное значение p указывает, что тест отклоняет нулевую гипотезу на 1%-м уровне значения. Можно использовать структуру stats выполнять дополнительное последующее тестирование. Массив ячеек tbl содержит те же данные как графическая таблица ANOVA, включая метки строки и столбец.

Проведите последующий тест, чтобы идентифицировать, какая выборка данных прибывает из различного распределения.

c = multcompare(stats)
Note: Intervals can be used for testing but are not simultaneous confidence intervals.

Figure Multiple comparison of mean ranks contains an axes. The axes with title Click on the group you want to test contains 7 objects of type line.

c = 3×6

    1.0000    2.0000   -5.1435    7.8000   20.7435    0.3345
    1.0000    3.0000  -31.9935  -19.0500   -6.1065    0.0016
    2.0000    3.0000  -39.7935  -26.8500  -13.9065    0.0000

Результаты показывают, что существует значительная разница между группами 1 и 3, таким образом, тест отклоняет нулевую гипотезу, что данные в этих двух группах прибывают из того же распределения. То же самое верно для групп 2 и 3. Однако между группами 1 и 2 нет значительной разницы, таким образом, тест не отклоняет нулевую гипотезу, что эти две группы происходят из того же распределения. Поэтому эти результаты предлагают, чтобы данные в группах 1 и 2 прибыли из того же распределения, и данные в группе 3 прибывают из различного распределения.

Создайте вектор, strength, содержа измерения силы металлических лучей. Создайте второй вектор, alloy, указание на тип металлического сплава, из которого сделан соответствующий луч.

strength = [82 86 79 83 84 85 86 87 74 82 ...
            78 75 76 77 79 79 77 78 82 79];

alloy = {'st','st','st','st','st','st','st','st',...
         'al1','al1','al1','al1','al1','al1',...
         'al2','al2','al2','al2','al2','al2'};

Протестируйте нулевую гипотезу, что измерения силы луча имеют то же распределение через все три сплава.

p = kruskalwallis(strength,alloy,'off')
p = 0.0018

Возвращенное значение p указывает, что тест отклоняет нулевую гипотезу на 1%-м уровне значения.

Входные параметры

свернуть все

Выборочные данные для гипотезы тестируют в виде вектора или m-by-n матрицу. Если x m-by-n матрица, каждый из столбцов n представляет независимую выборку, содержащую m взаимно независимые наблюдения.

Типы данных: single | double

Сгруппированная переменная в виде числового или логического вектора, символьного массива или массива строк или массива ячеек из символьных векторов.

  • Если x вектор, затем каждый элемент в group идентифицирует группу к который соответствующий элемент в x принадлежит, и group должен быть вектор из той же длины как x. Если строка group содержит пустое значение, ту строку и соответствующее наблюдение в x игнорируются. NaN значения в любом x или group так же проигнорированы.

  • Если x матрица, затем каждый столбец в x представляет другую группу, и можно использовать group задавать метки для этих столбцов. Число элементов в group и количество столбцов в x должно быть равным.

Метки содержатся в group также аннотируйте диаграмму.

Пример: {'red','blue','green','blue','red','blue','green','green','red'}

Типы данных: single | double | logical | char | string | cell

Параметр отображения в виде 'on' или 'off'. Если displayopt 'on', kruskalwallis отображения следующие фигуры:

  • Таблица ANOVA, содержащая суммы квадратов, степени свободы и другие количества, вычисленные на основе рангов данных в x.

  • Диаграмма данных в каждом столбце матрицы данных x. Диаграммы основаны на фактических значениях данных, а не на рангах.

Если displayopt 'off', kruskalwallis не отображает эти фигуры.

Если вы задаете значение для displayopt, необходимо также задать значение для group. Если у вас нет сгруппированной переменной, задайте group как [].

Пример: 'off'

Выходные аргументы

свернуть все

p- теста, возвращенного как скалярное значение в области значений [0,1]. p вероятность наблюдения тестовой статистической величины как экстремальное значение как, или более экстремальный, чем, наблюдаемая величина по нулевой гипотезе. Маленькие значения p подвергните сомнению валидность нулевой гипотезы.

Таблица ANOVA результатов испытаний, возвращенных как массив ячеек. tbl включает суммы квадратов, степени свободы и другие количества, вычисленные на основе рангов данных в x, а также столбец и метки строки.

Тестовые данные, возвращенные как структура. Можно выполнить последующую обработку и анализ несколько тестов сравнения на парах демонстрационных медиан при помощи multcompare, с stats как входное значение.

Больше о

свернуть все

Краскэл-Уоллис Тест

Тест Краскэл-Уоллиса является непараметрической версией классического однофакторного дисперсионного анализа и расширением теста суммы ранга Wilcoxon больше чем двум группам. Тест Краскэл-Уоллиса допустим для данных, которые имеют две или больше группы. Это сравнивает медианы групп данных в x определить, прибывают ли выборки из того же населения (или, эквивалентно, из различных популяций с тем же распределением).

Тест Краскэл-Уоллиса использует ранги данных, а не числовые значения, чтобы вычислить тестовую статистику. Это находит ранги путем упорядоченного расположения данных от самого маленького до самого большого через все группы и взятия числового индекса этого упорядоченного расположения. Ранг для связанного наблюдения равен среднему рангу всех наблюдений, сыграл вничью с ним. F-статистическая-величина, используемая в классическом однофакторном дисперсионном анализе, заменяется статистической величиной хи-квадрата, и p-значение измеряет значение статистической величины хи-квадрата.

Тест Краскэл-Уоллиса принимает, что все выборки прибывают из популяций, имеющих то же непрерывное распределение кроме возможно других мест из-за эффектов группы, и что все наблюдения взаимно независимы. В отличие от этого, классический однофакторный дисперсионный анализ заменяет первое предположение на более сильное предположение, что у популяций есть нормальные распределения.

Представлено до R2006a