Я только что запустил отрицательный биномиальный GLM, и это вывод:
Call:
glm.nb(formula = small ~ method + site + depth, data = size.dat,
init.theta = 1.080668549, link = log)
Deviance Residuals:
Min 1Q Median 3Q Max
-2.2452 -0.9973 -0.3028 0.3864 1.8727
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 1.6954 0.1152 14.720 < 2e-16 ***
method.L -0.6828 0.1637 -4.171 3.04e-05 ***
site.L 0.9952 0.2050 4.854 1.21e-06 ***
site.Q -0.4634 0.1941 -2.387 0.017 *
depth.L 0.8951 0.1988 4.502 6.74e-06 ***
depth.Q 0.2060 0.1984 1.038 0.299
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for Negative Binomial(1.0807) family taken to be 1)
Null deviance: 185.1 on 89 degrees of freedom
Residual deviance: 100.8 on 84 degrees of freedom
AIC: 518.24
Мои предсказатели все категоричны. Вот почему я .L
и получаю .Q
. Я предполагаю, что они представляют разные категории, но знает ли кто-нибудь код, который я мог бы использовать для маркировки их перед запуском GLM, чтобы вместо этого они отображались как разные категории?
glm
.Ответы:
Ваши переменные не просто кодируются как факторы (чтобы сделать их категоричными), они кодируются как упорядоченные факторы. Тогда по умолчанию R подгоняет ряд полиномиальных функций к уровням переменной. Первый - линейный (
.L
), второй - квадратичный (.Q
), третий (если у вас достаточно уровней) будет кубическим и т. Д. R будет соответствовать на одну меньшую полиномиальную функцию, чем количество уровней в вашей переменной. Например, если у вас есть только два уровня, подойдет только линейный тренд. Кроме того, используемые базисы полиномов являются ортогональными. (Что бы ни стоило, ни одно из этого не относится к R - или к отрицательным биномиальным моделям - все программное обеспечение и типы регрессионных моделей будут делать то же самое.)Концентрируясь конкретно на R, если вы хотите, чтобы ваши переменные были закодированы как упорядоченные или неупорядоченные, вы бы использовали ? Factor :
источник