#r #regression
#r #регрессия
Вопрос:
Я ломал голову над этим и не могу понять, каков наилучший способ для этого.
До сих пор я проводил свой первоначальный MLR
reg=lm(register~.,data=train)
Оттуда я проверил наличие эффектов взаимодействия, используя
testinter=glm(register~(.-atemp)*(.-atemp),data=train)
После определения значимых взаимодействий я включил все в свою модель.
reg=lm(register~season:month season:temp year:month
year:weekday year:temp month:temp holiday:windspeed weekday:
weathersit weekday:hum weathersit:hum
hum weathersit season year temp, data=train)
Однако, после рассмотрения некоторых переменных, hum и temp необходимо было преобразовать в полиномиальные термины. hum ^ 2 и temp ^ 3.
Мой вопрос в том, как я могу включить их в эффекты взаимодействия? Это моя попытка до сих пор, когда я заменил «hum» на poly (hum, 2, raw = T), но я не уверен, правильно ли это.
reg=lm(register~season:month season:poly(temp,3,raw=T) year:month
year:weekday year:poly(temp,3,raw=T) month:poly(temp,3,raw=T) holiday:windspeed weekday:
weathersit weekday:poly(hum,2,raw=T) weathersit:poly(hum,2,raw=T)
poly(hum,2,raw=T) weathersit season year poly(temp,3,raw=T), data=train)
Комментарии:
1. Добро пожаловать в Stack Overflow! Пожалуйста, обратите внимание, что SO в целом требует воспроизводимых примеров, и
r
тег специально запрашивает, чтобы вы делились даннымиdput()
, если в вашем примере не используются встроенные данные. Пожалуйста, наведите курсор мыши на тег R для получения дополнительной информации.
Ответ №1:
Вы должны использовать I()
, когда вам нужно выполнить преобразование в lm
glm
уравнении или.
Вот пример использования iris
набора данных:
data(iris)
reg <- lm(Sepal.Length~Sepal.Width:I(Petal.Length^2), data=iris)
summary(reg)
Call:
lm(formula = Sepal.Length ~ Sepal.Width:I(Petal.Length^2), data = iris)
Residuals:
Min 1Q Median 3Q Max
-0.9405 -0.2357 0.0029 0.2224 0.8241
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4.8649126 0.0478357 101.70 <2e-16 ***
Sepal.Width:I(Petal.Length^2) 0.0192699 0.0007492 25.72 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.3552 on 148 degrees of freedom
Multiple R-squared: 0.8172, Adjusted R-squared: 0.816
F-statistic: 661.6 on 1 and 148 DF, p-value: < 2.2e-16
Комментарии:
1. Спасибо! Это действительно помогает! Быстрый вопрос, что, если некоторые взаимодействия между квадратичными и кубическими членами связаны с факторными / категориальными переменными? Должен ли я по-прежнему использовать I()?
2. @ieaggie Всегда пожалуйста. Да, если вы имеете в виду это
Species:I(Petal.Length^2)
, это работает нормально. Конечно, вы не можете использовать мощность или другое преобразование уровня фактора, поскольку это не имеет никакого смысла. Но если вы имеете в виду числовую переменную, с которой вы взаимодействуете, то да.