[英]Linear regression with specified slope
我想将具有指定斜率的线性回归线拟合到数据集。 我读了这篇关于用明确拦截做同样事情的帖子 。
0+
抑制了截距的拟合; 斜坡的相应技巧是什么? 例如,为了拟合斜率为1.5的线,我尝试了以下方法
set.seed(6)
x <- runif(100, -3, 3)
y <- 2 + x + rnorm(100)
model1<-lm(y ~ x)
plot(x,y)
abline(model1,col="red")
abline(coef(model1),1.5,col="dark green")
但是第二个abline函数只接受了model1和slope 1.5的截距。 虽然我希望回归线的斜率为1.5,找到最适合数据点,然后从该回归线计算截距。
要找到截距的值,您实际上不需要回归。 由于Y = a + b * X + ϵ
,则E[Y - b * X] = E[a] + E[ϵ]
,并且假设E[a] = a
且E[ϵ] = 0
,其中E[]
是期望运营商。 因此, a = E[Y - b * X]
。
翻译成R,这意味着拦截a
是:
b1 <- 1.5
a <- mean(y - b1 * x)
这是受到这个问题的评论的启发。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.