Я запускаю линейную регрессию по ряду атрибутов, включая два категориальных атрибута, B
и F
, и я не получаю значение коэффициента для каждого множителя уровня, который у меня есть.`lm` summary не отображает все уровни факторов
B
имеет 9 уровней и F
имеет 6 уровней. Когда я изначально запускал модель (с перехватами), я получил 8 коэффициентов для B
и 5 для F
, которые я понял как первый уровень каждого из них, включенных в перехват.
Я хочу, чтобы ранжировать уровни в B
и F
на основе их коэффициента, поэтому я добавил -1
после каждого фактора, чтобы зафиксировать перехватывать на 0, так что я мог бы получить коэффициенты для всех уровней.
Call:
lm(formula = dependent ~ a + B-1 + c + d + e + F-1 + g + h, data = input)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
a 2.082e+03 1.026e+02 20.302 < 2e-16 ***
B1 -1.660e+04 9.747e+02 -17.027 < 2e-16 ***
B2 -1.681e+04 9.379e+02 -17.920 < 2e-16 ***
B3 -1.653e+04 9.254e+02 -17.858 < 2e-16 ***
B4 -1.765e+04 9.697e+02 -18.202 < 2e-16 ***
B5 -1.535e+04 1.388e+03 -11.059 < 2e-16 ***
B6 -1.677e+04 9.891e+02 -16.954 < 2e-16 ***
B7 -1.644e+04 9.694e+02 -16.961 < 2e-16 ***
B8 -1.931e+04 9.899e+02 -19.512 < 2e-16 ***
B9 -1.722e+04 9.071e+02 -18.980 < 2e-16 ***
c -6.928e-01 6.977e-01 -0.993 0.321272
d -3.288e-01 2.613e+00 -0.126 0.899933
e -8.384e-01 1.171e+00 -0.716 0.474396
F2 4.679e+02 2.176e+02 2.150 0.032146 *
F3 7.753e+02 2.035e+02 3.810 0.000159 ***
F4 1.885e+02 1.689e+02 1.116 0.265046
F5 5.194e+02 2.264e+02 2.295 0.022246 *
F6 1.365e+03 2.334e+02 5.848 9.94e-09 ***
g 4.278e+00 7.350e+00 0.582 0.560847
h 2.717e-02 5.100e-03 5.328 1.62e-07 ***
Это работало в части, что приводит к отображению всех уровней B
, однако до сих пор не отображается F1
. Поскольку перехвата уже нет, я смущен, почему F1
не находится в линейной модели.
Переключение порядка вызова, так что + F - 1
предшествует + B - 1
результатов коэффициентов всех уровней F
быть видимыми, но не B1
.
Кто-нибудь знает либо как отобразить все уровни как B
и F
, или как оценить относительный вес F1
по сравнению с другими уровнями F
с выходов у меня есть?
Zheyuan Li производит очень ответ, чтобы просто сказать, что линейная регрессия - это своего рода ортогональная проекция вашей исходной функции на набор более простых функций, ваших переменных. Если две (или более) переменные одинаковы (например, константные функции), сохраняется только одна (или более) переменная. И кажется, что 'R' хранит только первое появление – clemlaflemme