Spec-Zone.ru › NumPy 1.16

numpy.random.f

numpy.random.f(dfnum, dfden, size=None)

Выборка из распределения F.

Выборка осуществляется из распределения F со заданными параметрами, dfnum (степени свободы в числителе) и dfden (степени свободы в знаменателе), где оба параметра должны быть больше нуля.

Случайная величина распределения F (также известного как распределение Фишера) — это непрерывное распределение вероятностей, которое используется в тестах ANOVA и является отношением двух величин хи-квадрат.

Параметры:
dfnum : float or array_like of floats

Степени свободы в числителе, должно быть > 0.

dfden : float or array_like of float

Степени свободы в знаменателе, должно быть > 0.

size : int or tuple of ints, optional

Форма выходных данных. Если заданная форма, например, (m, n, k), то m * n * k выборок генерируется. Если размер равен None (по умолчанию), возвращается одно значение, если dfnum и dfden оба являются скалярами. В противном случае генерируется np.broadcast(dfnum, dfden).size выборок.

Возвращаемое значение:
out : ndarray or scalar

Выборка из параметризованного распределения Фишера.

См. также

scipy.stats.f
функция плотности вероятности, распределение или функция кумулятивной плотности вероятности и т. д.

Примечания

Статистика F используется для сравнения внутригрупповых дисперсий с межгрупповыми дисперсиями. Расчет распределения зависит от выборки, поэтому он зависит от соответствующих степеней свободы в задаче. Переменная dfnum — это число выборок минус один, степени свободы между группами, а dfden — степени свободы внутри групп, сумма числа выборок в каждой группе минус число групп.

Ссылки

[1] Glantz, Stanton A. “Primer of Biostatistics.”, McGraw-Hill, Fifth Edition, 2002.
[2] Wikipedia, “F-распределение”, https://en.wikipedia.org/wiki/F-distribution

Примеры

Пример из Glantz[1], стр. 47-40:

Две группы: дети диабетиков (25 человек) и дети людей без диабета (25 контролей). Измерялся уровень глюкозы в плазме крови натощак, группа больных имела среднее значение 86,1, контрольная группа — 82,2. Стандартные отклонения составляли соответственно 2,09 и 2,49. Совместимы ли эти данные с нулевой гипотезой о том, что статус диабета родителей не влияет на уровень глюкозы в крови их детей? Вычисление статистики F по данным дает значение 36,01.

Генерируем выборку из распределения:

>>> dfnum = 1. # between group degrees of freedom
>>> dfden = 48. # within groups degrees of freedom
>>> s = np.random.f(dfnum, dfden, 1000)

Нижняя граница для верхних 1% выборок:

>>> sort(s)[-10]
7.61988120985

Таким образом, вероятность того, что статистика F превысит 7,62, составляет около 1%. Измеренное значение равно 36, поэтому нулевая гипотеза отвергается на уровне значимости 1%.

© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.16.1/reference/generated/numpy.random.f.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API