python实现简单的单变量线性回归方法
作者:xckkcxxck 发布时间:2021-03-27 09:04:51
标签:python,线性回归
线性回归是机器学习中的基础算法之一,属于监督学习中的回归问题,算法的关键在于如何最小化代价函数,通常使用梯度下降或者正规方程(最小二乘法),在这里对算法原理不过多赘述,建议看吴恩达发布在斯坦福大学上的课程进行入门学习。
这里主要使用python的sklearn实现一个简单的单变量线性回归。
sklearn对机器学习方法封装的十分好,基本使用fit,predict,score,来训练,预测,评价模型,
一个简单的事例如下:
from pandas import DataFrame
from pandas import DataFrame
import pandas as pd
import matplotlib.pyplot as plt
from sklearn import datasets,linear_model
X=[]
Y=[]
with open("C:\\Users\\www\\ex1data1.txt","r") as f: #读取txt文件。
for line in f:
p_tmp, E_tmp = [float(i) for i in line.split(',')]
X.append(p_tmp)
Y.append(E_tmp)
#'data=np.loadtxt('ex1data1.txt',delimiter=',')
# X=data[0]
# Y=data[1]
data=DataFrame(X,columns={'a'})
data['b']=b
X=DataFrame(X)
fig = plt.figure()
ax1 = fig.add_subplot(1,1,1)
plt.scatter(data['a'],data['b']) #显示X,Y的散点图
def linear_model_main(X,Y,predict_value): #定义一个使用线性回归的函数
regr=linear_model.LinearRegression()
regr.fit(X,Y) #训练模型
predict_output=regr.predict(predict_value) #预测
predictions={} #用一个集合装以下元素
predictions['intercept']=regr.intercept_ #截距
predictions['codfficient']=regr.coef_ #斜率(参数)
predictions['predict_value']=predict_output #预测值
return predictions
result = linear_model_main(X,Y,1500) #调用函数
print(result['predict_value'])
def show_predict(X,Y):
regr=linear_model.LinearRegression()
regr.fit(X,Y)
plt.scatter(X,Y,color='blue')
plt.plot(X,regr.predict(X),color='red')
show_predict(X,Y)
最后拟合结果如图:
来源:https://blog.csdn.net/xckkcxxck/article/details/70158004
0
投稿
猜你喜欢
- 由于分形树具有对称性,自相似性,所以我们可以用递归来完成绘制。只要确定开始树枝长、每层树枝的减短长度和树枝分叉的角度,我们就可以把分形树画出
- 前言为了介绍python语言中pandas库在数据分析中的重要作用,本人打算以NBA球星勒布朗詹姆斯在2020-2021赛季常规赛个人数据为
- 凯撒密码的原理:计算并输出偏移量为3的凯撒密码的结果注意:密文是大写字母,在变换加密之前把明文字母都替换为大写字母def casar(mes
- try ...except 是最常见的捕获处理异常的结构,其主要作用是将可能出现问题的代码块用try :包裹起来,不至于出现错误让程序崩溃,
- 有了Selenium,还可以轻松操作Cookies,比如获取、添加、删除Cookies。具体代码如下:from selenium impor
- 代码如下:<% function GetBot() '查询蜘蛛 dim s_
- server:#coding=utf-8from BaseHTTPServer import BaseHTTPRequestHandleri
- 下面通过一段代码给大家介绍php参数过滤class mysafe{ public $logname; public $isshwomsg;
- 最近准备使用Python+Hadoop+Pandas进行一些深度的分析与机器学习相关工作。(当然随着学习过程的进展,现在准备使用Python
- 本文实例为大家分享了python实现网上购物系统的具体代码,供大家参考,具体内容如下1.购物商城的需求分析:1、输出欢迎界面还有登录注册菜单
- 前言原理:Windows逆向,通过内联汇编的形式调用发消息的函数下面的代码PC微信版本是:3.7.0.26 , python使用的32位的3
- 一,什么是JSON文件JSON和XML都是互联网上数据交换的主要载体。在JSON出现之前,大家一直用XML来传递数据。因为XML是一种纯文本
- 前言前面一直使用命令行运行pytest用例,本篇来学下使用pytest.main()来运行测试用例pytest.main()args 传一个
- 前言服务器的相关知识曾经让我非常困惑。我相信还有很多的Python开发者和我有着类似的遭遇。本文主要介绍了python下如何查询CS * 精英
- MVC和MTV框架 MVC Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,
- model.py:#!/usr/bin/python# -*- coding: utf-8 -*-import torchfrom torc
- 代码如下:<form action="insert.asp" method="pos
- 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的编写,刚开始不会体会出SQL语句各种写法的性能优劣,但是如果将应
- 首先确定你要爬取的目标网站的表单提交方式,可以通过开发者工具看到。这里推荐使用chrome。这里我用163邮箱为例打开工具后再Network
- 问题: 将u'\u810f\u4e71'转换为'\u810f\u4e71'