Что такое скорректированная формула R-квадрата в lm в R и как ее следует интерпретировать?

35

Какая точная формула используется в R lm() для Скорректированного R-квадрата? Как я могу интерпретировать это?

Скорректированные R-квадрат формулы

Кажется, существует несколько формул для расчета скорректированного R-квадрата.

  • Формула Вери:1(1R2)(n1)(nv)
  • Формула Макнемара:1(1R2)(n1)(nv1)
  • Формула Господа:1(1R2)(n+v1)(nv1)
  • Формула Штейна:1[(n1)(N-К-1)(N-2)(N-К-2)(N+1)N](1-р2)

Описание учебников

  • Согласно учебнику Филда « Обнаружение статистики с использованием R» (2012, стр. 273) R использует уравнение Вэрри, которое «говорит нам, сколько дисперсии в Y будет учтено, если модель была получена из совокупности, из которой была взята выборка». Он не дает формулу для Wherry. Он рекомендует использовать формулу Штейна (вручную), чтобы проверить, насколько хорошо модель выполняет перекрестную проверку.
  • Kleiber / Zeileis, Applied Econometrics with R (2008, p. 59) утверждают, что это «скорректированный R-квадрат Тейла», и не говорят точно, как его интерпретация отличается от множественного R-квадрата.
  • Далгаард, Вводная статистика с R (2008, стр. 113) пишет, что «если вы умножите [скорректированный R-квадрат] на 100%, это можно интерпретировать как«% уменьшения дисперсии »». Он не говорит, какой формуле это соответствует.

Ранее я думал и читал широко, что R-квадрат штрафует за добавление дополнительных переменных в модель. Теперь использование этих разных формул, по-видимому, требует разных интерпретаций. Я также посмотрел на связанный вопрос о переполнении стека (в чем разница между множественным R-квадратом и скорректированным R-квадратом в регрессии по методу наименьших квадратов с одной переменной? ) И статистическим словарем школы Уортона в UPenn .

Вопросов

  • Какая формула используется для скорректированного r-квадрата R lm() ?
  • Как я могу интерпретировать это?
Gung - Восстановить Монику
источник
8
из summary.lm ():, ans$adj.r.squared <- 1 - (1 - ans$r.squared) * ((n - df.int)/rdf)где ans $ r.squared = R ^ 2; n = n, rdf = остаток df, df.int = перехватить df (0 или 1).
EDi
Я собираюсь дать ответ на реальную проблему здесь, а не "что за R ^ 2 ...". Информация, которую вам (и многим другим) не хватает, такова: все пакеты R, даже ядро, делают исходный код доступным. Даже материал, скомпилированный в дистрибутивах, доступен в {packagenames} .tar.gz в CRAN или другом репозитории.
Карл Виттофт
ОП здесь: Спасибо за этот отличный вклад. Как насчет моего второго вопроса: как я могу это интерпретировать? Я прочитал очень много разных интерпретаций Аджа. R-квадрат, который иногда кажется основанным на формуле, которая может не соответствовать формуле Wherry?

Ответы:

29

1. Какую формулу lmв R использует для скорректированного r-квадрата?

Как уже упоминалось, ввод текста summary.lmдаст вам код, который R использует для вычисления скорректированного квадрата R. Извлекая наиболее релевантную строку, вы получаете:

ans$adj.r.squared <- 1 - (1 - ans$r.squared) * ((n - df.int)/rdf)

что соответствует в математической записи:

Radj2=1(1R2)n1np1

df.int=1nprdfn-p-1

npnp1

2. Почему так много скорректированных формул r-квадрата?

Radj2ρ2ρ2

R2Radj2

Radj2

Radj2ρ2ρ2R2

Ссылки

  • R2
Джером англим
источник
9

Относительно вашего первого вопроса: если вы не знаете, как он рассчитывается, посмотрите на код! Если вы наберете summary.lmв своей консоли, вы получите код для этой функции. Если вы обезжиренное Повсеместно код , который вы найдете строку: ans$adj.r.squared <- 1 - (1 - ans$r.squared) * ((n - df.int)/rdf). Если вы посмотрите несколько строк выше этой строки, вы заметите, что:

  • ans$r.squaredR2
  • n количество остатков = количество наблюдений
  • df.int 0 или 1 (в зависимости от того, есть ли у вас перехват)
  • rdf ваш остаточный дф

R2R2

EDi
источник