runstest

Запустите тест для случайности

Описание

h = runstest(x) возвращает тестовое решение для нулевой гипотезы что значения в векторе данных x существуйте произвольного порядка против альтернативы, которую они не делают. Тест основан на количестве запусков последовательных значений выше или ниже среднего значения x. Результат h 1 если тест отклоняет нулевую гипотезу на 5%-м уровне значения или 0 в противном случае.

пример

h = runstest(x,v) возвращает тестовое решение на основе количества запусков последовательных значений выше или ниже заданного ссылочного значения v. Значения точно равняются v отбрасываются.

h = runstest(x,'ud') возвращается тестовое решение на основе количества увеличивается или вниз. Слишком мало запусков указывает на тренд, в то время как слишком много запусков указывают на колебание. Значения точно равняются предыдущему значению, отбрасываются.

h = runstest(___,Name,Value) возвращает тестовое решение с помощью дополнительных опций, заданных одним или несколькими аргументами пары "имя-значение". Например, можно изменить уровень значения теста, указать, что алгоритм раньше вычислял p - значение или проводил односторонний тест.

[h,p,stats] = runstest(___) также возвращает p - значение теста p, и структура stats содержа дополнительные данные о тесте.

Примеры

свернуть все

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

rng default;  % for reproducibility
x = randn(40,1);

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

[h,p] = runstest(x,median(x))
h = 0
p = 0.8762

Возвращенное значение h = 0 указывает на тот runstest не отклоняет нулевую гипотезу что значения в x находятся в произвольном порядке на 5%-м уровне значения по умолчанию.

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

свернуть все

Вектор данных, заданный как вектор скалярных значений. runstest обработки NaN значения в x как отсутствующие значения, и игнорирует их.

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

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

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

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Alpha',0.01,'Method','Approximate','Tail','right' задает тест с правильным хвостом с 1%-м уровнем значения, который возвращает аппроксимированное p-значение.

Уровень значения теста гипотезы, заданного как разделенная запятой пара, состоящая из 'Alpha' и скалярное значение в области значений (0,1).

Пример: 'Alpha',0.01

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

Метод использовался для расчета p - значение, заданное как разделенная запятой пара, состоящая из 'Method' и любой 'exact' использовать точный алгоритм или 'approximate' использовать нормальное приближение. Значением по умолчанию является 'exact' для запусков выше/ниже, и для запусков/вниз, когда длина x меньше чем или равно 50. Если runstest тесты для запусков/вниз и длины x больше 50, затем значением по умолчанию является 'approximate', и 'exact' метод не доступен.

Пример: 'Method','approximate'

Тип альтернативной гипотезы, заданной как разделенная запятой пара, состоящая из 'Tail' и одно из следующих.

'both'Двусторонний тест (последовательность не случайна),
'right'Тест с правильным хвостом (как значения отделяются для запусков выше/ниже, альтернативы направления для запусков/вниз),
'left'Лево-хвостатый тест (как кластер значений для запусков выше/ниже, тренд значений для запусков/вниз)

Пример: 'Tail','right'

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

свернуть все

Результат испытаний гипотезы, возвращенный как 1 или 0.

  • Если h= 1 , затем runstest отклоняет нулевую гипотезу в Alpha уровень значения.

  • Если h= 0 , затем runstest сбои, чтобы отклонить нулевую гипотезу в Alpha уровень значения.

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

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

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

p вычисляется или из тестовой статистической величины или из точного распределения количества запусков, в зависимости от значения, заданного для 'Method' аргумент пары "имя-значение".

Тестовые данные, возвращенные как структура со следующими полями.

  • nruns — Количество запусков

  • n1 — Количество значений выше v

  • n0 — Количество значений ниже v

  • z — Тестовая статистическая величина

Смотрите также

|

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