R语言绘制一个位势残差图,且没有异常点和高杆点
时间: 2024-05-13 07:20:53 浏览: 212
以下是一个简单的R代码示例,用于绘制位势残差图,并删除异常值和高杆点:
```R
# 生成随机数据
set.seed(123)
x <- rnorm(50, mean = 10, sd = 2)
y <- 2*x + rnorm(50, mean = 0, sd = 2)
# 计算线性回归模型
fit <- lm(y ~ x)
# 计算位势残差
resid <- rstandard(fit)
# 绘制位势残差图
plot(fitted(fit), resid, main = "位势残差图", xlab = "拟合值", ylab = "位势残差")
# 删除异常值和高杆点
outliers <- which(abs(resid) > 2.5)
high_leverage <- which(hatvalues(fit) > 0.05)
# 绘制删除异常值和高杆点后的位势残差图
plot(fitted(fit)[-c(outliers, high_leverage)], resid[-c(outliers, high_leverage)],
main = "位势残差图(无异常值和高杆点)", xlab = "拟合值", ylab = "位势残差")
```
该代码首先生成了一个随机数据集,然后计算线性回归模型。接下来,使用`rstandard()`函数计算位势残差,并使用`plot()`函数绘制位势残差图。最后,使用`which()`函数找到异常值和高杆点的索引,并使用`[-c()]`索引运算符删除这些点。再次使用`plot()`函数绘制删除异常值和高杆点后的位势残差图。
阅读全文