вопрос о синтаксисе в спецификации модели R - PullRequest
0 голосов
/ 10 июля 2011

Глядя на учебник по plyr, я нахожу следующую подготовку:

b2 <- ddply(baseball, "id", transform, cyear = year - min(year) + 1)  
b2 <- ddply(b2, "id", transform, career = (cyear - 1) / max(cyear)) 
bruth <- subset(b2, id == "ruthba01")
# Could we model that as two straight lines?
bruth$p <- (bruth$career - 0.5) * 100

Теперь какая-то модель

mod <- lm(g ~ p + p:I(p > 0), data = bruth)

В чем разница?

mod <- lm(g ~ p + I(p > 0), data = bruth)

когда я проверяю

mod$model

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

любая идея о том, что этообозначение означает?

1 Ответ

1 голос
/ 10 июля 2011

Запустите следующий код, чтобы увидеть влияние различных моделей:

 with(bruth, plot(p, predict(mod), type="l" )  )
 with(bruth, points(p, g,  col="red") )
 with(bruth, lines(p, predict(mod2), lty=3, lwd=2, col="red") )
 title(main="Different uses of I() and interaction")

В нем подчеркивается влияние выбора (произвольных?) Точек соединения на результат сегментированной регрессии.

enter image description here

...