Получите оценку lm для каждой категориальной переменной - PullRequest
0 голосов
/ 21 февраля 2019

Итак, я делаю множественную линейную регрессию, чтобы увидеть, влияют ли плотность трещин и тип породы на скорость отступления в породах.

retreat <- lm(retreat_rate ~ fracture_dens + rock_unit, data = coast)
> summary(retreat)

Я бы хотел, чтобы 'rock_unit' относился к категории.У меня есть два типа камней в векторе.Вот мой текущий результат.

Coefficients:
                     Estimate Std. Error t value Pr(>|t|)    
(Intercept)          -0.22631    0.53806  -0.421 0.676353    
fracture_dens         0.11467    0.02704   4.241 0.000132 ***
rock_unitSC_mudstone  1.73490    0.36097   4.806  2.3e-05 ***

Я бы хотел, чтобы вместо 'rock_unitSC_mudstone', который он мне дал сейчас, были 'SC_mudstone' и 'Purisima' (другой тип камня).

1 Ответ

0 голосов
/ 21 февраля 2019

это типичный результат для линейных моделей: переменная rock_unitSC_mudstone является фиктивной переменной, которая определяется как:

rock_unitSC_mudstone = 1, если единица породы = SC_mudstone, и 0 в противном случае.

Добавление дополнительной переменной rock_unitPurisima приведет к тому, что матрица модели $ X $ не будет иметь полный ранг.

В любом случае, вам не нужна переменная rock_unitPurisima.Вы можете интерпретировать результаты следующим образом:

Средняя скорость отступления для SC_mudstone = -0.22631 + 1.73490 Средняя скорость отступления для Purisima = -0.22631

Если вы настаиваете на переменной rock_unitPurisima, вы можете установитьперехват до нуля:

retreat2 <- lm(retreat_rate ~ 0 + fracture_dens + rock_unit, data = coast)

Но, как я уже сказал, перехват и обе фиктивные переменные просто будут содержать слишком много информации.

Надеюсь, что это было полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...