线性回归误差分析代码
时间: 2024-10-31 11:08:32 浏览: 42
R语言实现线性回归分析
线性回归是一种常见的统计建模技术,用于预测因变量与一个或多个自变量之间的关系。误差分析是对模型性能评估的重要部分,通常包括残差分析、均方误差(MSE)、R²分数等。以下是Python中使用sklearn库进行简单线性回归并进行误差分析的一个示例:
```python
from sklearn.linear_model import LinearRegression
import numpy as np
import matplotlib.pyplot as plt
from sklearn.metrics import mean_squared_error
# 假设我们有训练数据 X (特征) 和 y (目标值)
X = np.random.rand(100, 1) # 100个样本,每个样本有一个特征
y = 2 + 3 * X + np.random.randn(100, 1) # 随机生成的目标值,包含一些噪声
# 创建并拟合线性回归模型
model = LinearRegression()
model.fit(X, y)
# 预测
y_pred = model.predict(X)
# 计算均方误差
mse = mean_squared_error(y, y_pred)
print("Mean Squared Error:", mse)
# 残差分析
residuals = y - y_pred
plt.scatter(range(len(residuals)), residuals, alpha=0.5)
plt.xlabel('Sample Index')
plt.ylabel('Residuals')
plt.show()
# R²分数
r2_score = model.score(X, y)
print("R² Score:", r2_score)
```
在这个例子中,我们首先创建了一个线性回归模型,然后用训练数据拟合它,接着进行预测并计算了均方误差。最后,我们展示了残差图,这可以帮助我们理解模型是否过度拟合或欠拟合,以及R²分数,它衡量了模型解释数据变异性的比例。
阅读全文