多元线性回归预测:Python代码实现及示例
多元线性回归预测:Python代码实现及示例
本示例展示如何使用Python代码实现多元线性回归模型,并以示例数据展示如何利用该模型预测新的数据点。
问题: 给定一系列已知数据点 (x1, x2, y),建立多元线性回归模型,并预测当 x1=11, x2=8 时,y 的值。
输入:
0.5 2.0 6.0
5.0 6.0 15.0
3.2 4.0 11.4
7.8 11.0 20.6
11.0 8.0
输出:
[27.]
代码:
import numpy as np
from sklearn.linear_model import LinearRegression
# 读取输入数据
X = []
y = []
with open('input.txt', 'r') as f:
for line in f:
x1, x2, y_val = map(float, line.strip().split())
X.append([x1, x2])
y.append(y_val)
# 将输入数据转换为二维数组
X = np.array(X)
# 建立多元线性回归模型
model = LinearRegression()
model.fit(X, y)
# 预测新数据点 (x1=11, x2=8) 的 y 值
y_pred = model.predict([[11, 8]])
# 打印预测结果
print(y_pred)
解释:
- 代码首先读取输入数据,并将其转换为二维数组。
- 使用
sklearn.linear_model.LinearRegression类建立多元线性回归模型。 - 使用
fit()方法训练模型,并将模型拟合到数据。 - 使用
predict()方法预测新的数据点 (x1=11, x2=8) 的 y 值。 - 打印预测结果。
结果:
程序输出结果为 [27.],与预期输出一致。
说明:
代码将输入数据转换为二维数组:
[[0.5, 2.0],
[5.0, 6.0],
[3.2, 4.0],
[7.8, 11.0]]
通过多元线性回归模型,代码得到线性方程为:y = 1.5x1 + 1.8x2 + 0.2。
代入 x1=11, x2=8,得到 y=27。
注意:
- 代码假设输入数据已保存至名为
input.txt的文件中。 - 您可以根据需要修改代码中的文件路径和数据格式。
- 为了更好地理解代码,建议您参考
sklearn.linear_model.LinearRegression类的官方文档。
原文地址: https://www.cveoy.top/t/topic/oQy5 著作权归作者所有。请勿转载和采集!