您当前的位置:首页 > 计算机 > 编程开发 > Python

使用线性回归拟合平面最佳直线及预测之Python+sklearn实现

时间:12-27来源:作者:点击数:

本文代码采用sklearn扩展库实现,使用线性回归算法解决下面的问题:根据平面上已知3个点的坐标,拟合最佳直线斜率k和截距b,然后根据拟合的结果对给出的x坐标进行预测,得到y坐标。

from sklearn import linear_model

def linearRegressionPredict(x, y):

    lr = linear_model.LinearRegression()

    # 拟合

    lr.fit(x, y)

    return lr

# 平面上三个点的x轴坐标

x = [[1], [5], [7]]

# 平面上三个点的y轴坐标

y = [[3], [100], [120]]

# 根据已知3个点拟合最佳直线的系数和截距

lr = linearRegressionPredict(x, y)

# 查看最佳拟合系数

print('k:', lr.coef_)

# 截距

print('b:', lr.intercept_)

# 测试代码,预测

xs = [[[3]], [[5]], [[7]], [[10]]]

for item in xs:

    print(item, ':', lr.predict(item))

运行结果:

k: [[ 20.17857143]]

b: [-13.10714286]

[[3]] : [[ 47.42857143]]

[[5]] : [[ 87.78571429]]

[[7]] : [[ 128.14285714]]

[[10]] : [[ 188.67857143]]

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门