@基于python实现的基本线性回归(高中数学版)

由于毕设的原因,在这里做一些笔记,主要是记录一下pandas和list以及基本计算求得线性回归的系数

数据集来源

数据集是来自于科赛的数据,附下载链接(需要一个github账号才能下载)
https://www.kesci.com/home/dataset/59e715b76d213335f38d4507
下载好了以后的数据集就是这样的

我这次采用的是车辆的数据集进行基本的计算,车辆的速度与行驶距离之间的关系是否能用基本的线性回归方式进行拟合呢?那么我们首先要求得之间的相关系数才能下结论,但是最起码我掌握了一种基本的预测方法。

一些基本知识

从下图可以看到我们要求的是系数b,差值a以及我们对应的x,y的平均数

  • 用pandas读取文件
  • 合并文件中的两个X,Y
  • 求出x,y的平均数
  • 带入求得方差
  • 带入求得b
  • 带入求得a

做个笔记,如果不知道怎么合并两个X,Y 可以用list(zip())解决,

好了,在最后上代码,

在这里插入代码片import pandas as pd
df = pd.read_csv("cars.csv")#读取文件
speed_fc = 0.0#速度的方差
dist_fc = 0.0#距离的方差
speed_data = df["speed"]
dist_data = df["dist"]
###分别获取X Y的数据###
b = 0.0
a = 0.0
###两个系数的初始化###
#content_tuple = (speed_data,dist_data)
mix = list(zip(speed_data,dist_data))
speed_avg = sum(speed_data)/len(speed_data)
dist_avg = sum(dist_data)/len(dist_data)
###计算平均数###
for i in speed_data:speed_fc = speed_fc + pow(speed_avg-i,2)
for i in dist_data:dist_fc = dist_fc + pow(dist_avg - i,2)
###这部分是为了求出b式子中的分母部分###
speed_fc1 = speed_fc/len(speed_data)
dist_fc1 = dist_fc/len(dist_data)
###实际意义上的方差###
for i,j in mix:b = b + (i-speed_avg)*(j-dist_avg)
###这步是为了求出b式子中的分子部分#
b = b/speed_fc
a = dist_avg - b*speed_avg**到此我们的求值结束**

基于python实现的线性回归基础相关推荐

  1. 大学计算机基础python学多久_基于Python 的“大学计算机基础”课程教学设计

    基于Python 的"大学计算机基础"课程教学设计 日期:2018-04-11 04:32 摘要 培养非计算机专业大学生的计算思维能力,在"大学计算机基础"课程 ...

  2. 基于python的量化投资基础(Chapter.0)——概述

    量化交易概述 量化交易就是通过数理统计模型方式及计算机程序化发出买卖指令去实现投资理念.实现投资策略的过程,以获取稳定收益为目的的交易方式. 广义的量化投资=基于现代科学方法的理论体系+研究方式+工程 ...

  3. 基于Python的中英文分词基础:正则表达式和jieba分词器

    基于Python的中英文分词基础:正则表达式和jieba分词器 前言介绍 英文字符串处理 Python中的str 正则表达式 Python中的正则表达式模块 re 小练习 字符串中出现频次最多的字母 ...

  4. 基于Python的大数据分析基础(九)--- 数据分析

    8 数据分析 8.1 基本统计分析(描述性统计分析) 一般统计某个变量的最小值,第一个四分位值,中值,第三个四分位值,以及最大值 均值(Mean),中位数(Median)和众数(Mode) 其中均值和 ...

  5. Python Train_机器学习--基于Python的简单线性回归

    一.概念 线性回归(Linear regression)是利用称为线性回归方程的最小二乘函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析. 这种函数是一个或多个称为回归系数的模型参数的线性 ...

  6. python大数据分析基础教程_基于Python的大数据分析基础及实战

    第1部分 基 础 篇 第1章 Python语言基础 /2 1.0 引子 /2 1.1 工欲善其事,必先利其器(安装Python) /3 1.2 学跑得先学走(语法基础) /9 1.3 程序结构 /11 ...

  7. python与anaconda安装(先安装了python后安装anaconda,基于python已存在的基础上安装anaconda)——逼死强迫症、超详解

    目录 一.安装python(python3.7.4) 1.下载 (1)下载1(32位) (2)下载2(64位) 2.安装 3.配置python环境变量 4.检验python 二.安装anaconda( ...

  8. python与anaconda安装(先安装了python后安装anaconda,基于python已存在的基础上安装anaconda)

    文章目录 前言 一.安装python 1.下载python的区别 二.安装anaconda(anaconda3) 1.下载 2.安装 3. 环境变量(在没有添加path选项的时候进行添加) 4.检验a ...

  9. 《基于Python的大数据分析基础及实战》第一章

    第一章

  10. 《基于Python的大数据分析基础及实战》第四章

    第四章 文件下载 阿里云永不限速:https://www.aliyundrive.com/s/1nLLM4keEKS 若没有注册阿里云请使用以下链接注册,双方各领300G 我在使用超好用的「阿里云盘」 ...

最新文章

  1. 看完这篇 JVM 垃圾回收,和面试官扯皮没问题了
  2. n阶完全图边和顶点关系。_正N边型的完全图被分割成几个多边形
  3. Spring Boot JPA中使用@Entity和@Table
  4. .net 下语音合成
  5. Django的model中日期字段设置默认值的问题
  6. Android之解决aidl里面函数参数太大不能跨进程通信的问题
  7. 朴素贝叶斯算法注意事项(有待完善)
  8. ScrollView与TableView实现选择效果
  9. 数字电路 模拟电路 先学哪个_国外经典电子资料:电子电路分析与设计
  10. js ajax 访问java函数,将url分配给Java EE项目中的ajax(js)函数
  11. dk7与jdk8环境共存与切换
  12. 微信小程序微商城(二):电商首页轮播、分类导航和新品特卖实现
  13. 中关村硬科技孵化器首次合作建科技成果转化创新平台
  14. android trainning(4)
  15. C语言度量代码质量常用指标,代码度量标准
  16. 钉钉作弊软件开发者,被判 5 年半,为什么提供「虚拟定位」会被判这么久?...
  17. 1N5408-ASEMI整流二极管1N5408
  18. Kali linux渗透测试系列————34、Kali linux 维持访问之创建Web后门
  19. Unity灯光烘焙设置详解
  20. 雅虎财经api_雅虎! 发布音乐API

热门文章

  1. C++设计模式(全23种)
  2. Linux Windows 的Tensorflow 配置: Nvidia 老显卡运算能力低于3.0
  3. spring security自定义登录失败返回错误信息
  4. 《连线》长文特写李飞飞:已识乾坤大,犹怜草木青
  5. 开源免费的C/C++网络库 c/c++ sockets library 七剑下天山
  6. MenuetOS-令人不可思议的64位操作系统!-第二辑
  7. 拓嘉辰丰:如何抵制拼多多的恶劣买家
  8. 七牛上传图片(前台JS+后台C#API获取token)
  9. Android动态获取权限(读写、获取手机状态、定位)
  10. 浅析气排球技、战术特点