参考:http://www.r-bloggers.com/r-for-ecologists-putting-together-a-piecewise-regression/
在本文中,我对这个论点感到困惑:
y ~ x*(x < breaks[i]) + x*(x>=breaks[i])
lm()
中的。
我知道*
中的lm
表示互动和主要影响,这是否意味着预测变量是x x (x < breaks[i]) (x < breaks[i])
和互动?
答案 0 :(得分:1)
这是一种做“分段”回归的方法。你实际上是在创建两个不同的模型,一个用于x&lt;打破[i]和另一个相反的情况。在这种情况下,*
将作为乘数运行,而不是作为交互运算符,因为值为{0,1},因此不会有两级结果。网页似乎做了很好的说明,所以不清楚缺少什么。如果将模型公式写成:
y ~ x*I(x < breaks[i]) + x*I(x>=breaks[i])
它实质上意味着有两个预测变量:第一个是x
,第二个是逻辑矢量,在小于break [i]的区域中为1,在另一个区域中为0。事实上,如果您刚刚使用,则可能不需要模型中的两个术语:
y ~ x*I(x < breaks[i])
我认为预测是相同的,但它们略有不同,也许是因为这两个术语模型隐含地允许完全独立的截距。
还有segmented
和strucchange
个软件包支持分段回归。