在线性回归中将斜率设置为1并将y截距设置为0以修剪异常值

时间:2018-02-22 07:48:53

标签: r regression linear-regression

我试图用固定斜率(到1)和截距(到0)进行线性回归,最后想要使用统计数据去除远离此拟合的点。

# set slope =1
my_slope <-1
mylm <- lm(as.numeric(y) ~ 1 + offset(x*my_slope), data = mydata)

# set intercept=0
my_intercept<-0
mylim<-lim(I(x-intercept)~0+y)

我不确定这两个代码是否正确,首先。如果是,有没有办法以更简单的方式组合这两个代码?

1 个答案:

答案 0 :(得分:0)

由于您已经完全指定了线性模型,因此无需进行任何回归。你的模型是

y = x + 1

然后你可以使用

修剪任何残差(距预测值的距离)大于d的点。
data.pruned = subset(data,abs(y - (x+1)) <= d)

请注意,如果要修剪平方残差小于dq的值,只需设置

即可。
d = sqrt(dq)