scipy.stats.

friedmanchisquare#

scipy.stats.friedmanchisquare(*образцы, ось=0, nan_policy='propagate', keepdims=False)[источник]#

Вычислить тест Фридмана для повторных выборок.

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

Параметры:
sample1, sample2, sample3…array_like

Массивы наблюдений. Все массивы должны иметь одинаковое количество элементов. Должно быть предоставлено не менее трех выборок.

осьint или None, по умолчанию: 0

Если это целое число, ось входных данных, по которой вычисляется статистика. Статистика каждого среза по оси (например, строки) входных данных появится в соответствующем элементе вывода. Если None, вход будет сведён в одномерный массив перед вычислением статистики.

nan_policy{‘propagate’, ‘omit’, ‘raise’}

Определяет, как обрабатывать входные значения NaN.

  • propagate: если NaN присутствует в срезе оси (например, строке), вдоль которой вычисляется статистика, соответствующая запись вывода будет NaN.

  • omit: NaN будут пропущены при выполнении расчета. Если в срезе оси, вдоль которого вычисляется статистика, остается недостаточно данных, соответствующая запись вывода будет NaN.

  • raise: если присутствует NaN, то ValueError будет вызвано исключение.

keepdimsbool, по умолчанию: False

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

Возвращает:
статистикаfloat

Тестовая статистика с поправкой на связи.

p-значениеfloat

Соответствующее p-значение в предположении, что статистика критерия имеет распределение хи-квадрат.

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

Критерий Фридмана для повторных выборок

Расширенный пример

Примечания

Из-за предположения, что тестовая статистика имеет распределение хи-квадрат, p-значение надежно только для n > 10 и более чем 6 повторных выборок.

Начиная с SciPy 1.9, np.matrix входные данные (не рекомендуется для нового кода) преобразуются в np.ndarray перед выполнением вычисления. В этом случае результатом будет скаляр или np.ndarray подходящей формы вместо 2D np.matrix. Аналогично, хотя маскированные элементы маскированных массивов игнорируются, результатом будет скаляр или np.ndarray вместо маскированного массива с mask=False.

Ссылки

[2]

Demsar, J. (2006). Statistical comparisons of classifiers over multiple data sets. Journal of Machine Learning Research, 7, 1-30.

Примеры

>>> import numpy as np
>>> rng = np.random.default_rng(seed=18)
>>> x = rng.random((6, 10))
>>> from scipy.stats import friedmanchisquare
>>> res = friedmanchisquare(x[0], x[1], x[2], x[3], x[4], x[5])
>>> res.statistic, res.pvalue
(11.428571428571416, 0.043514520866727614)

P-значение меньше 0.05; однако, как отмечено выше, результаты могут быть ненадежными, поскольку у нас малое количество повторных выборок.

Для более подробного примера см. Критерий Фридмана для повторных выборок.