如何解释R中三段线性回归的输出

如何解释R中三段线性回归的输出,r,regression,linear-regression,piecewise,R,Regression,Linear Regression,Piecewise,我有一个三段式线性回归模型,我用R来模拟大量人群中随年龄增长的体重。我的数据集称为hdata。通过一个贯穿所有断点组合的迭代过程,我找到了与最小残差平方误差模型相关的两个断点。我的分段回归的代码(指定了两个断点)是: piecewise=lm(hdata$weight ~ hdata$age*(hdata$age < 0.7) + hdata$age*(hdata$age>=0.7 & hdata$age<2) + hdata$age*(hdata$age>2))

我有一个三段式线性回归模型,我用R来模拟大量人群中随年龄增长的体重。我的数据集称为hdata。通过一个贯穿所有断点组合的迭代过程,我找到了与最小残差平方误差模型相关的两个断点。我的分段回归的代码(指定了两个断点)是:

piecewise=lm(hdata$weight ~ hdata$age*(hdata$age < 0.7) + hdata$age*(hdata$age>=0.7 & hdata$age<2) + hdata$age*(hdata$age>2))
我得到以下输出:

                                                Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                     1723.012    210.042   8.203 3.67e-16 ***
hdata$age                                         18.494      1.089  16.975  < 2e-16 ***
hdata$age < 0.7TRUE                            -1690.051    210.476  -8.030 1.48e-15 ***
hdata$age >= 0.7 & hdata$age < 2TRUE            -721.200    213.882  -3.372 0.000758 ***
hdata$age > 2TRUE                                478.094    210.194   2.275 0.023016 *  
hdata$age:hdata$age < 0.7TRUE                   2022.896     45.477  44.481  < 2e-16 ***
hdata$age:hdata$age >= 0.7 & hdata$age < 2TRUE   603.453     30.532  19.764  < 2e-16 ***
hdata$age:hdata$age > 2TRUE                           NA         NA      NA       NA 

根据这些估计,我想计算与模型相关的三个截距和三个斜率,但我不知道如何计算。为简单起见,我调用了与Intercept Est1相关的估计,与hdata$age Est2相关的估计,等等……直到Est7。我认为第一个截距应该是Est1+Est3,第一个斜率应该是Est2+Est6,但我可能错了,仍然不知道如何计算其他截距和斜率。任何帮助都将不胜感激。

我强烈建议您看看分节包装。罗兰:非常感谢。事实上,我最初尝试过这个软件包,但发现结果在很大程度上取决于它要求我提供的初始估计值——稍微修改一下,结果会大不相同。这就是为什么我想试着在没有那个软件包的情况下运行它。你能提供一个解决方案吗?我担心您构建的模型不是分段连续的,也就是说,值可能会在断点处跳转,我猜这是不可取的。如果你在分段软件包方面遇到问题,这也会让我担心你的问题在某种程度上是不稳定的…@BenBolker:我没有考虑我没有使它连续的事实-你可能是对的,我需要解决这个问题。因为我的数据集相当大,所以我只是想知道如何为这做一个可复制的例子。我会尽快提供一个。
                                                Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                     1723.012    210.042   8.203 3.67e-16 ***
hdata$age                                         18.494      1.089  16.975  < 2e-16 ***
hdata$age < 0.7TRUE                            -1690.051    210.476  -8.030 1.48e-15 ***
hdata$age >= 0.7 & hdata$age < 2TRUE            -721.200    213.882  -3.372 0.000758 ***
hdata$age > 2TRUE                                478.094    210.194   2.275 0.023016 *  
hdata$age:hdata$age < 0.7TRUE                   2022.896     45.477  44.481  < 2e-16 ***
hdata$age:hdata$age >= 0.7 & hdata$age < 2TRUE   603.453     30.532  19.764  < 2e-16 ***
hdata$age:hdata$age > 2TRUE                           NA         NA      NA       NA