numpy.random.f#
- random.f(dfnum, dfden, размер=None)#
Извлечение выборок из распределения Фишера.
Выборки берутся из F-распределения с заданными параметрами, dfnum (степени свободы в числителе) и dfden (степени свободы в знаменателе), где оба параметра должны быть больше нуля.
Случайная величина распределения Фишера (также известного как распределение Фишера) — это непрерывное распределение вероятностей, возникающее в тестах ANOVA и представляющее собой отношение двух хи-квадрат случайных величин.
Примечание
Новый код должен использовать
fметодGeneratorэкземпляр вместо; пожалуйста, смотрите Быстрый старт.- Параметры:
- dfnumfloat или array_like из float
Степени свободы в числителе, должны быть > 0.
- dfdenfloat или array_like из float
Степени свободы в знаменателе, должны быть > 0.
- размерint или кортеж ints, опционально
Форма вывода. Если заданная форма, например,
(m, n, k), затемm * n * kобразцы извлекаются. Если size равенNone(по умолчанию), возвращается единственное значение, еслиdfnumиdfdenоба являются скалярами. В противном случае,np.broadcast(dfnum, dfden).sizeвыбираются образцы.
- Возвращает:
- выходndarray или скаляр
Выборки, извлечённые из параметризованного распределения Фишера.
Смотрите также
scipy.stats.fфункция плотности вероятности, распределение или интегральная функция распределения и т.д.
random.Generator.fкоторый следует использовать для нового кода.
Примечания
F-статистика используется для сравнения внутригрупповых дисперсий с межгрупповыми дисперсиями. Расчет распределения зависит от выборки и поэтому является функцией соответствующих степеней свободы в задаче. Переменная dfnum это количество выборок минус один, степени свободы между группами, в то время как dfden является степенями свободы внутри групп, суммой количества выборок в каждой группе минус количество групп.
Ссылки
[1]Гланц, Стэнтон А. «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 соответственно. Согласуются ли эти данные с нулевой гипотезой о том, что диабетический статус родителей не влияет на уровень глюкозы в крови их детей? Расчет 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% выборок:
>>> np.sort(s)[-10] 7.61988120985 # random
Таким образом, существует около 1% вероятности, что F-статистика превысит 7,62, измеренное значение равно 36, поэтому нулевая гипотеза отвергается на уровне 1%.