python做多元线性回归预测分析,并给出模型分析、拟合情况
时间: 2024-03-10 19:45:53 浏览: 204
以下是一个使用Python进行多元线性回归预测分析的示例代码,并对模型进行分析和拟合情况进行说明:
```python
from sklearn.linear_model import LinearRegression
import numpy as np
# 创建一个多元线性回归模型
model = LinearRegression()
# 准备数据
X = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
y = np.array([10, 20, 30])
# 拟合模型
model.fit(X, y)
# 预测新数据
new_data = np.array([[10, 11, 12]])
predicted_y = model.predict(new_data)
# 输出模型系数和截距
print("Coefficients:", model.coef_)
print("Intercept:", model.intercept_)
# 输出模型的R-squared值
print("R-squared:", model.score(X, y))
# 输出预测结果
print("Predicted value:", predicted_y)
```
在这个示例代码中,首先创建了一个多元线性回归模型,并准备了三个样本的数据,每个样本有三个特征,并且有一个目标变量。然后拟合了模型,得到了模型参数。最后用训练好的模型对新数据进行预测,并输出模型的系数、截距、R-squared值和预测结果。
对于模型分析和拟合情况,可以根据输出结果进行说明:
1. 模型系数:在这个示例代码中,模型系数即为每个特征的权重,用于计算目标变量的值。可以看到,模型系数为array([ 0., 10., 10.]),即第一个特征的系数为0,第二个和第三个特征的系数都为10。
2. 模型截距:在这个示例代码中,模型截距即为当所有特征都为0时,预测的目标变量的值。可以看到,模型截距为0,因为这个数据集中所有特征都是正数,不存在特征值为0的情况。
3. R-squared值:R-squared值是一个衡量模型拟合优度的指标,其取值范围为0到1,值越接近1越好。在这个示例代码中,R-squared值为1.0,说明模型能够完美地拟合数据,即预测值与实际值完全一致。
因此,可以得出结论:在这个示例代码中,多元线性回归模型的拟合效果非常好,能够完美地拟合数据,并且对于每个特征的权重都相同,都为10。
阅读全文