numpy.random.RandomState.f
метод
-
random.RandomState.f(dfnum, dfden, size=None) -
Генерация выборок из распределения Фишера.
Выборка производится из распределения Фишера со заданными параметрами,
dfnum(степени свободы в числителе) иdfden(степени свободы в знаменателе), где оба параметра должны быть больше нуля.Случайная величина распределения Фишера (также известного как распределение Фишера) — это непрерывное распределение вероятностей, которое используется в ANOVA-тестах и представляет собой отношение двух хи-квадратных величин.
Примечание
Новый код должен использовать метод
fэкземпляраdefault_rng(), см. Быстрый старт.- Параметры
-
-
dfnumfloat or array_like of floats -
Степень свободы в числителе, должна быть > 0.
-
dfdenfloat or array_like of float -
Степень свободы в знаменателе, должна быть > 0.
-
sizeint or tuple of ints, optional -
Форма выходных данных. Если заданная форма, например,
(m, n, k), тоm * n * kвыборок генерируются. Если размер равенNone(по умолчанию), возвращается одно значение, еслиdfnumиdfdenявляются скалярами. В противном случае генерируетсяnp.broadcast(dfnum, dfden).sizeвыборок.
-
- Возвращает
-
-
outndarray or scalar -
Сгенерированные выборки из параметризованного распределения Фишера.
-
См. также
-
scipy.stats.f -
функция плотности вероятности, распределение или функция кумулятивной плотности и т.д.
-
Generator.f -
который следует использовать для нового кода.
Примечания
Статистика Фишера используется для сравнения внутригрупповых дисперсий с межгрупповыми дисперсиями. Вычисление распределения зависит от выборки, и поэтому является функцией соответствующих степеней свободы в задаче. Переменная
dfnum— это количество выборок минус один, степени свободы между группами, в то время какdfden— степени свободы внутри групп, сумма количества выборок в каждой группе минус количество групп.Ссылки
-
1 -
Glantz, Stanton A. «Primer of Biostatistics.» McGraw-Hill, пятое издание, 2002.
-
2 -
Википедия, «F-распределение», https://en.wikipedia.org/wiki/F-distribution
Примеры
Пример из Glantz[1], стр. 47-40:
Две группы: дети диабетиков (25 человек) и дети без диабета (25 контрольных). Измерялся уровень глюкозы в крови натощак, у первой группы среднее значение 86,1, у контрольной группы 82,2. Стандартные отклонения соответственно 2,09 и 2,49. Совместимы ли эти данные с нулевой гипотезой, что статус родителей в отношении диабета не влияет на уровень глюкозы в крови их детей? Вычисление статистики Фишера по данным дает значение 36,01.
Генерировать выборки из распределения:
>>> dfnum = 1. # between group degrees of freedom >>> dfden = 48. # within groups degrees of freedom >>> s = np.random.f(dfnum, dfden, 1000)
Нижняя граница для верхних 1% выборок:
>>> np.sort(s)[-10] 7.61988120985 # random
Таким образом, существует примерно 1% вероятность того, что статистика Фишера превысит 7,62. Измеренное значение равно 36, поэтому нулевая гипотеза отвергается на уровне значимости 1%.
© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/random/generated/numpy.random.RandomState.f.html