La situation
J'ai un ensemble de données avec un dépendant et une variable indépendante . Je veux adapter une régression linéaire continue par morceaux avec points d'arrêt connus / fixes se produisant à . Les breakpoins sont connus sans incertitude, donc je ne veux pas les estimer. Ensuite, j'adapte une régression (OLS) de la forme Voici un exemple dans
R
set.seed(123)
x <- c(1:10, 13:22)
y <- numeric(20)
y[1:10] <- 20:11 + rnorm(10, 0, 1.5)
y[11:20] <- seq(11, 15, len=10) + rnorm(10, 0, 2)
Supposons que le point d'arrêt se produit à 9,6 :
mod <- lm(y~x+I(pmax(x-9.6, 0)))
summary(mod)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 21.7057 1.1726 18.511 1.06e-12 ***
x -1.1003 0.1788 -6.155 1.06e-05 ***
I(pmax(x - 9.6, 0)) 1.3760 0.2688 5.120 8.54e-05 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
L'ordonnée à l'origine et la pente des deux segments sont: et pour le premier et et pour le second, respectivement.
Des questions
- Comment calculer facilement l'ordonnée à l'origine et la pente de chaque segment? Le modèle peut-il être re-paramétré pour le faire en un seul calcul?
- Comment calculer l'erreur type de chaque pente de chaque segment?
- Comment tester si deux pentes adjacentes ont les mêmes pentes (c'est-à-dire si le point d'arrêt peut être omis)?
la source
x
etI(pmax(x-9.6,0))
, est-ce correct?Mon approche naïve, qui répond à la question 1:
Mais je ne sais pas si les statistiques (en particulier les degrés de liberté) sont faites correctement, si vous le faites de cette façon.
la source