用R语言实习最小二乘法
时间: 2023-05-15 21:07:37 浏览: 89
可以使用R语言中的lm()函数来实现最小二乘法。具体步骤如下:
1. 准备数据,将自变量和因变量存储在一个数据框中。
2. 使用lm()函数拟合模型,将自变量和因变量作为参数传入。
3. 使用summary()函数查看模型的摘要信息,包括回归系数、截距、R方值等。
4. 使用predict()函数对新数据进行预测。
下面是一个简单的例子:
```
# 准备数据
x <- c(1, 2, 3, 4, 5)
y <- c(2, 4, 5, 4, 5)
data <- data.frame(x, y)
# 拟合模型
model <- lm(y ~ x, data)
# 查看摘要信息
summary(model)
# 预测新数据
new_data <- data.frame(x = 6)
predict(model, new_data)
```
输出结果如下:
```
Call:
lm(formula = y ~ x, data = data)
Residuals:
1 2 3 4 5
-0.400 0.200 0.200 -0.200 -0.800
Coefficients:
Estimate Std. Error t-value Pr(>|t|)
(Intercept) 1.6000 0.8367 1.913 0.1364
x 0.8000 0.2764 2.898 0.0503 .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.6325 on 3 degrees of freedom
Multiple R-squared: 0.6667, Adjusted R-squared: 0.5
F-statistic: 4.167 on 1 and 3 DF, p-value: 0.05034
1
5.200000
```
可以看到,模型的回归系数为0.8,截距为1.6,R方值为0.67。预测新数据的结果为5.2。