Właśnie uruchomiłem ujemny dwumianowy GLM i to jest wynik:
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
Wszystkie moje predyktory są kategoryczne. Czy to dlatego dostaję .L
i .Q
. Zakładam, że reprezentują one różne kategorie, ale czy ktoś zna kod, którego mógłbym użyć do oznaczenia ich przed uruchomieniem GLM, aby zamiast tego pojawiały się jako różne kategorie?
glm
.Odpowiedzi:
Twoje zmienne są nie tylko kodowane jako czynniki (aby uczynić je kategorycznymi), są one kodowane jako czynniki uporządkowane . Następnie domyślnie R dopasowuje szereg funkcji wielomianowych do poziomów zmiennej. Pierwszy jest liniowy (
.L
), drugi jest kwadratowy (.Q
), trzeci (jeśli masz wystarczającą liczbę poziomów) będzie sześcienny, itp. R dopasuje jedną funkcję wielomianową mniejszą niż liczba poziomów w zmiennej. Na przykład, jeśli masz tylko dwa poziomy, pasowałby tylko trend liniowy. Ponadto stosowane zasady wielomianowe są ortogonalne. (Pod względem wartości nic nie jest specyficzne dla R - ani dla ujemnych modeli dwumianowych - całe oprogramowanie i typy modeli regresji zrobiłyby to samo.)Skupiając się głównie na badania, jeśli chcesz, aby twoje zmienne kodowane jako uporządkowane lub nieuporządkowane, należałoby użyć czynnika? :
źródło