Проверка гипотез о нормальности распределения

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

Разумеется, каждому расчету можно найти аналог, применимый в тех случаях, когда закон распределения переменной отличается от нормального – так называемые непараметрические статистические методы. Тем не менее, в своем большинстве непараметрические тесты менее точны, менее чувствительны и уступают в надежности. Очевидно, что если предпочтительным является такой случай, который позволит использовать параметрический метод расчета, то и задачу можно упростить, сформулировав её не как определение функции распределения, а как проверка согласия с нормальным законом распределения.

Как и любой статистический анализ данных, проверку согласия распределения величины с нормальным законом рекомендуется проводить в два этапа: 1) графический анализ, 2) проверка гипотезы о нормальности распределения. С некоторыми способами графической оценки распределения читатель может ознакомиться из публикации Определяем закон распределения “на глаз”. В настоящей публикации внимание будет уделено лишь второй части анализа – проверке гипотезы о согласии распределения переменной с нормальным законом.

В качестве исходных результатов наблюдений сгенерируем два набора по 100 значений:

  • со средним арифметическим – 100 и стандартным отклонением 5, распределённых согласно нормальному закону;
  • с минимальным значением 85 и максимальным – 115, распределенных согласно непрерывной равномерной функции.

Исходные данные вы сможете найти в прикрепленном к статье файле, доступном для всех зарегистрированных пользователей.

Ниже представлены гистограммы для сгенерированных рядов данных:

Чтобы провести проверку согласия с нормальным законом распределения в программе Minitab, выберите Stat \ BasicStatistics \ NormalityTest. В появившемся окне укажите колонку значений в ячейке Variable:

В поле Tests for Normality следует выбрать один из критериев согласия (по умолчаниюиспользуется критерий Андерсона-Дарлинга, как один из наиболее мощных). Выполнив указанные действия, вы настроите программу на тест гипотезы: генеральная совокупность подчиняется нормальному закону. Альтернативная гипотеза в настоящем тесте будет звучать так: генеральная совокупность не подчиняется нормальному закону.

Ниже представлены результаты тестов гипотезы о согласии сгенерированных ранее наборов значений с нормальным законом распределения:

Исходя из значения вероятности (P-Value), для первого набора данных мы не можем отклонить нулевую гипотезу (p>0,05), в то время как для второго – вероятность достаточно мала для принятия альтернативной гипотезы. Значение критерия AD (Anderson-Darling) много ниже в первом случае, что свидетельствует о лучшей аппроксимации первого набора наблюдений кривой нормального закона распределения.

Ниже представленны результаты анализа, с помощью различных критериев согласия:

Обратите внимание на отличие вероятности (p) согласия функции распределения с нормальным законом при использовании различных критериев. Однако, даже несмотря на различные результаты, выделить наилучший или универсальный критерий не представляется возможным.

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


UPD 07.11.2011: Часть 2

Выше мы рассмотрели возможности различных критериев проверки распределения (goodness of fit) наблюдаемой величины с нормальным законом, применив программу статистической обработки данных Minitab. Ниже – рассмотрим возможности среды R для выполнения сходных задач, некоторые другие критерии проверки нормальности и ограничения наиболее часто применяемых тестов. Мы также проведем обзор методов вычисления тестовых статистик, влияющих на ограничения тех или иных критериев согласия. Все это поможет Вам лучше понять механизм проведения тестов гипотез о согласии распределения с нормальным законом и интерпретации результатов.

Для проведения тестов мы используем тот же набор данных, что и в предыдущей части статьи. Сохраните файл в папку “Мои документы” и задайте данные в программу с помощью команды:

> x<-read.csv(file="Normality.csv", header=TRUE, sep=";", dec=",")


Также нам потребуется программа R и пакет “nortest”. Для установки пакета необходимо запустить программу и ввести команду “install.packages("nortest")”. После установки пакета необходимо вызвать его с помощью команды “library(nortest)”.

После того, как вызван пакет nortest и данные присвоены переменной x, можно провести тест гипотезы о нормальности распределения, используя одну из следующих команд, соответственно выбранному критерию:

  • ad.test() – критерий Андерсона-Дарлинга.
  • ks.test() – критерий Колмогорова-Смирнова.
  • sf.test() – критерий Шапиро-Франсиа.
  • cvm.test() – критерии Крамера-фон Мизеса.
  • lillie.test() – критерий Лиллифорса.
  • pearson.test() – критерий Χ-квадрат Пирсона.

В аргументе команды следует указать переменную и, если необходимо, столбец данных. Например, для проверки согласия распределения в первой колонке необходимо указать в скобках команды x[,1] или x$Normal:

> ad.test(x[,1])
        Anderson-Darling normality test
data: x[, 1]
A = 0.4424, p-value = 0.2825


Для второго столбца данных:

> ad.test(x$Uniform)
        Anderson-Darling normality test
data: x$Uniform
A = 0.9587, p-value = 0.01493


Значение “A” показывает нам тестовую статистику, а “p-value” – вероятность, с которой рассмотренный числовой ряд удовлетворяет нормальному закону распределения, если значение p-value ниже или равно установленному α-уровню (по умолчанию 0.05), то гипотеза о согласии распределения переменной с нормальным законом отвергается и принимается альтернативная – распределение переменной не подчиняется нормальному закону распределения. В противном случае говорят, что нулевую гипотезу нельзя отвергнуть.

В рассмотренном примере полученные значения тестовой статистики и вероятности незначительно отличаются от тех, которые были рассчитаны в предыдущей статье с помощью программы Minitab. Тем не менее, p-value для наблюдений в колонке “Normal”превосходит величину α-уровня (0.2825>0.05), а следовательно, с определенной долей вероятности можно утверждать, что распределение наблюдаемой величины подчиняется нормальному закону. Во втором случае значение p ниже α-уровня (0.01493<0.05), соответственно, распределение переменной отличается от нормального закона.

Критерий Андерсона-Дарлинга позволяет сравнить тестовую статистику (обозначаемую A или AD) с табличным значением эмпирического распределения и, на основе этого, рассчитать вероятность (p-value) согласия распределения наблюдаемой величины с нормальным законом распределения. Тестовая статистика AD показывает насколько близко распределение наблюдаемой величины к эмпирическому. На следующем рисунке представлена гистограмма и наложение кривой нормального закона распределения. Оценить, насколько близка гистограмма к теоретической кривой можно, например, с помощью суммы квадратов всех отклонений частот в каждой определенной точке от эмпирической кривой.

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

Однако, это абсолютно не говорит нам о том при каком значении изучаемое распределение можно считать нормальным, а при каком нет. Для этого необходимо сравнить полученную величину статистики с какой-либо табличной величиной. Большинство специализированных программ содержит встроенные таблицы значений наиболее часто применяемых эмпирических распределений, поэтому пользователю нет необходимости вручную сравнивать полученное значение тестовой статистики с табличным. Таким образом, интерпретация полученного результата сводится к сравнению полученной вероятности (p-value) с величиной α-уровня.

Критерий Колмогорова-Смирнова реализован в R таким образом, что, понадобиться указать две переменные:

> ks.test(x[,1], у)


Где y – вектор значений, с которыми мы сравниваем данные первого столбца. Например, команда ks.test(x[,1], x[,2]) позволяет проверить гипотезу о происхождении наблюдений в обоих столбцах из одной популяции. Таким образом, с помощью функции “ks.test()” нам не удастся проверить гипотезу о согласии распределения наблюдаемой величины с нормальным законом. Однако, в пакете “nortest” присутствует модифицированный вариант критерия Колмогорова-Смирнова, специально для проверки нормальности. Он реализован с помощью функции lillie.test() – критерий Лиллифорса:

> lillie.test(x[,1])
        Lilliefors (Kolmogorov-Smirnov) normality test
data: x[, 1]
D = 0.0705, p-value = 0.2569


Критерий Крамера-фон Мизеса действует аналогичным образом. Тем не менее, если мы рассчитаем вероятность, используя этот критерий, то полученное значение p-value будет несколько отличаться от результатов предыдущих тестов, что можно объяснить различными тестовыми и табличными величинами:

> cvm.test(x[,1])
        Cramer-von Mises normality test
data: x[, 1]
W = 0.0813, p-value = 0.197


Выводы:

Рассмотренные критерии проверки гипотез о нормальности распределения позволяют оценить согласие закона распределения переменной с нормальным. Ввиду сравнения различных тестовых статистик (методов оценки “совпадения” распределения наблюдаемой величины с эмпирическим распределением) с различными табличными коэффициентами, значение вероятности в разных тестах может отличаться, что отнюдь не свидетельствует о различной точности критериев проверки нормальности.

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

07.11.2011 / 18194 / Загрузок: 97 / DMAgIC / Комментарии: 1
Всего комментариев: 1
avatar
0
1
Статистические расчёты в MS Excel на http://arhiuch.ru
avatar
SixSigmaOnline.ru © 2009-2020            Хостинг от uWeb