机器学习:利用sklearn方法的一元线性回归模型(通过成绩预测绩点)

这是之前学习线性回归时做的模型,精简版如果去掉注释只用了16行~~

首先需要数据:一个班级内所有人某课程的成绩、所有人最后的平均绩点(当然数据越多越好)

722.5
812.98
611.76
812.89
722.24
562.25
682.03
601.97
602.16
892.48
732.22
601.9
722.29
862.69
671.81
712.73
863.1
591.28
712.52
772.92
551.79
953.24
722.48
641.85
773.15
752.55
681.9
692.05
712.24
742.63
732.88
782.06
913.03
762.37
561.21
591.19
631.9
762.42
933.09

这里用了我们班大一下学期的高数成绩,可以看出来很是惨烈

接下来先上源码和运行截图再进行概述

import matplotlib.pyplot as plt
import xlrd
from sklearn.linear_model import LinearRegression
import numpy as np
# 载入数据,打开excel文件
ExcelFile = xlrd.open_workbook("D:\文件\机器学习/new.xls")
sheet1 = ExcelFile.sheet_by_index(0)
x = sheet1.col_values(0)
y = sheet1.col_values(1)
# 将列表转换为matrix
x = np.matrix(x).reshape(39, 1)
y = np.matrix(y).reshape(39, 1)
print(x, y)
model = LinearRegression()
model.fit(x, y)
# 划线
plt.plot(x, y, 'b.')
plt.plot(x, model.predict(x), 'r')
plt.show()

结果说明:可以看到运行出来是一个一次函数的图像,当把鼠标放到坐标系的任意位置,右下角都会显示其对应的x和y的值,其中x代表自变量(数学成绩),y代表(平均绩点),这样就能清楚的观察到,当数学成绩为多少时,平均绩点的可能值(反之仍成立)

使用的第三方库作用:

1、matplotlib:是一个画图所需要的包

2、xlrd:我用的是xls格式的Excel文件,所以用了这个库来导入对应的表以及表中的行和列

3、numpy:这里用numpy里的matrix方法将表格转换为矩阵形式

4、sklearn.linear_model:使用了sklearn中的线性回归模型,关于这里详情可以看之前本人写好的文章https://blog.csdn.net/tianhai12/article/details/119273702

机器学习:Sklearn库中linear_model线性模型中‘LinearRegression‘线性回归源码理解(一)_tianhai12的博客-CSDN博客

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天海一直在AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值