F-test

Материал из Поле цифровой дидактики
Краткое описание инструмента F-тест (Fisher's F-test, критерий Фишера) — это статистический критерий, используемый для проверки гипотез о равенстве дисперсий двух или более выборок, а также для проверки общей значимости регрессионных моделей и сравнения вложенных моделей.
Возможности
Трудности использования
Область знаний Статистика
Область применения образование
Поясняющее видео
Веб-сайт
Пользователи
Используется для создания (проведения) Статистический анализ
Разработчик
Сообщество вокруг средства
Лицензия
Год первого релиза
Совместное сетевое использование Нет
Какой язык основной Russian
Есть ли поддержка Искусственным Интеллектом Нет

F-тест (Fisher's F-test, критерий Фишера

Основная формула F-статистики

Для сравнения двух дисперсий:

[math]\displaystyle{ F = \frac{s_1^2}{s_2^2} }[/math]

где:

  • [math]\displaystyle{ s_1^2 }[/math] — дисперсия первой выборки
  • [math]\displaystyle{ s_2^2 }[/math] — дисперсия второй выборки

Для больших выборок используется формула:

[math]\displaystyle{ F = \frac{\sigma_1^2}{\sigma_2^2} }[/math]

  • где [math]\displaystyle{ \sigma_1^2 }[/math] и [math]\displaystyle{ \sigma_2^2 }[/math] — дисперсии генеральных совокупностей.


F-статистика в ANOVA

В однофакторном дисперсионном анализе
  • [math]\displaystyle{ F = \frac{MSB}{MSW} = \frac{\frac{SSB}{df_{between}}}{\frac{SSW}{df_{within}}} }[/math]

где:

  • MSB — межгрупповая средняя квадратичная ошибка
  • MSW — внутригрупповая средняя квадратичная ошибка
  • SSB — межгрупповая сумма квадратов отклонений
  • SSW — внутригрупповая сумма квадратов отклонений

F-статистика для регрессионного анализа

Для проверки общей значимости регрессионной модели:

[math]\displaystyle{ F = \frac{(SSR_r - SSR_u)/q}{SSR_u/(n-k-1)} }[/math]

где

- SSR_r — сумма квадратов остатков ограниченной модели - SSR_u — сумма квадратов остатков полной модели - q — количество ограничений - n — размер выборки - k — количество регрессоров

Примеры расчетов в R

Пример 1: Сравнение дисперсий двух выборок

# Создаем два набора данных
group1 <- c(15.2, 16.5, 14.8, 16.9, 15.5, 15.8, 17.2, 16.1, 15.9, 16.3)
group2 <- c(14.0, 13.8, 15.2, 13.9, 14.1, 14.5, 13.6, 14.3, 14.7, 13.5)

# Выполняем F-тест для сравнения дисперсий
f_test_result <- var.test(group1, group2)
print(f_test_result)

# Ручной расчет F-статистики
var_group1 <- var(group1)
var_group2 <- var(group2)
f_statistic <- var_group1 / var_group2

cat("Дисперсия группы 1:", var_group1, "\n")
cat("Дисперсия группы 2:", var_group2, "\n")
cat("F-статистика:", f_statistic, "\n")

Пример 2: ANOVA F-тест

# Создаем данные для трех групп
set.seed(123)
data <- data.frame(
  values = c(rnorm(10, mean=20, sd=2), 
             rnorm(10, mean=22, sd=2), 
             rnorm(10, mean=24, sd=2)),
  groups = factor(rep(c("A", "B", "C"), each=10))
)

# Выполняем однофакторный ANOVA
anova_result <- aov(values ~ groups, data = data)
summary(anova_result)

Пример 3: F-тест для регрессионной модели

# Загружаем библиотеку
library(car)

# Создаем данные
set.seed(456)
n <- 50
x1 <- rnorm(n)
x2 <- rnorm(n)
y <- 2 + 1.5*x1 + 0.8*x2 + rnorm(n, sd=0.5)

# Оцениваем полную модель
full_model <- lm(y ~ x1 + x2)

# Проверяем совместную значимость коэффициентов
linearHypothesis(full_model, c("x1=0", "x2=0"))