Как выполнить F-тест в Python


F-тест используется для проверки равенства двух дисперсий совокупности. Нулевая и альтернативная гипотезы для теста следующие:

H 0 : σ 1 2 = σ 2 2 (дисперсии населения равны)

H 1 : σ 1 2 ≠ σ 2 2 (дисперсии совокупности не равны)

В этом руководстве объясняется, как выполнить F-тест в Python.

Пример: F-тест в Python

Предположим, у нас есть следующие два образца:

x = [18, 19, 22, 25, 27, 28, 41, 45, 51, 55]
**y = [14, 15, 15, 17, 18, 22, 25, 25, 27, 34]

Мы можем использовать следующую функцию для выполнения F-теста, чтобы определить, имеют ли две совокупности, из которых взяты эти выборки, одинаковую дисперсию:

import numpy as np

#define F-test function
def f_test(x, y):
 x = np.array(x)
 y = np.array(y)
 f = np.var(x, ddof=1)/np.var(y, ddof=1) #calculate F test statistic 
 dfn = x.size-1 #define degrees of freedom numerator 
 dfd = y.size-1 #define degrees of freedom denominator 
 p = 1-scipy.stats.f.cdf(f, dfn, dfd) #find p-value of F test statistic 
 return f, p

#perform F-test
f_test(x, y)

(4.38712, 0.019127)

Статистика F-теста равна 4,38712 , а соответствующее значение p равно 0,019127.Поскольку это p-значение меньше 0,05, мы отвергаем нулевую гипотезу. Это означает, что у нас есть достаточно доказательств, чтобы сказать, что две дисперсии генеральной совокупности не равны.

Заметки

  • Статистика F-теста рассчитывается как s 1 2 / s 2 2.По умолчанию numpy.var вычисляет дисперсию населения. Чтобы вычислить выборочную дисперсию, нам нужно указать ddof=1 .
  • Значение p соответствует 1 – cdf распределения F со степенями свободы в числителе = n 1 -1 и степенями свободы в знаменателе = n 2 -1.
  • Эта функция работает только тогда, когда дисперсия первой выборки больше, чем дисперсия второй выборки. Таким образом, определите два образца таким образом, чтобы они работали с функцией.

Когда использовать F-тест

F-тест обычно используется для ответа на один из следующих вопросов:

1. Приходят ли две выборки из совокупности с одинаковой дисперсией?

2. Снижает ли новое лечение или процесс изменчивость некоторых существующих методов лечения или процесса?

Связанный: Как выполнить F-тест в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.