python中回归分析的算法_Python实现的简单线性回归算法实例分析
本文实例讲述了Python实现的简单线性回归算法。分享给大家供大家参考,具体如下:
用python实现R的线性模型(lm)中一元线性回归的简单方法,使用R的women示例数据,R的运行结果:> summary(fit)
Call:
lm(formula = weight ~ height, data = women)
Residuals:
Min 1Q Median 3Q Max
-1.7333 -1.1333 -0.3833 0.7417 3.1167
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -87.51667 5.93694 -14.74 1.71e-09 ***
height 3.45000 0.09114 37.85 1.09e-14 ***
—
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ‘ 1
Residual standard error: 1.525 on 13 degrees of freedom
Multiple R-squared: 0.991, Adjusted R-squared: 0.9903
F-statistic: 1433 on 1 and 13 DF, p-value: 1.091e-14
python实现的功能包括:
计算pearson相关系数
使用最小二乘法计算回归系数
计算拟合优度判定系数R2R2
计算估计标准误差Se
计算显著性检验的F和P值
import numpy as np
import scipy.stats as ss
class Lm:
"""简单一元线性模型,计算回归系数、拟合优度的判定系数和
估计标准误差,显著性水平"""
def __init__(self, data_source, separator):
self.beta = np.matrix(np.zeros(2))
self.yhat = np.matrix(np.zeros(2))
self.r2 = 0.0
self.se = 0.0
self.f = 0.0
self.msr = 0.0
self.mse = 0.0
self.p = 0.0
data_mat = np.genfromtxt(data_source, delimiter=separator)
self.xarr = data_mat[:, :-1] self.yarr = data_mat[:, -1] self.ybar = np.mean(self.yarr)
self.dfd = len(self.yarr) - 2 # 自由度n-2
return
# 计算协方差
@staticmethod
def cov_custom(x, y):
result = sum((x - np.mean(x)) * (y - np.mean(y))) / (len(x) - 1)
return result
# 计算相关系数
@staticmethod
def corr_custom(x, y):
return Lm.cov_custom(x, y) / (np.std(x, ddof=1) * np.std(y, ddof=1))
# 计算回归系数
def simple_regression(self):
xmat = np.mat(self.xarr)
ymat = np.mat(self.yarr).T
xtx = xmat.T * xmat
if np.linalg.det(xtx) == 0.0:
print('Can not resolve the problem')
return
self.beta = np.linalg.solve(xtx, xmat.T * ymat) # xtx.I * (xmat.T * ymat)
self.yhat = (xmat * self.beta).flatten().A[0] return
# 计算拟合优度的判定系数R方,即相关系数corr的平方
def r_square(self):
y = np.mat(self.yarr)
python中回归分析的算法_Python实现的简单线性回归算法实例分析相关推荐
- python线性回归算法简介_Python实现的简单线性回归算法实例分析
本文实例讲述了Python实现的简单线性回归算法.分享给大家供大家参考,具体如下: 用python实现R的线性模型(lm)中一元线性回归的简单方法,使用R的women示例数据,R的运行结果: > ...
- python 线性回归函数_Python实现的简单线性回归算法实例分析
本文实例讲述了Python实现的简单线性回归算法.分享给大家供大家参考,具体如下: 用python实现R的线性模型(lm)中一元线性回归的简单方法,使用R的women示例数据,R的运行结果: > ...
- python中字符串异或_python 异或加密字符串的实例
python 异或加密字符串的实例 做个简单习题:输入明文给定秘钥,密文还原,按位异或处理. import base64 as b64 def xor_encrypt(tips,key): ltips ...
- python中while的用法_Python学习笔记之While循环用法分析
本文实例讲述了Python学习笔记之While循环用法.分享给大家供大家参考,具体如下: 前面一篇<Python学习笔记之For循环用法>详细介绍了Python for循环,这里再来讲述一 ...
- python中write什么意思_python file write () 方法概括及作用分析(实例)
今天这篇文章我们来了解一下pythonwrite(),我会在这篇文章之中来讲解python中write方法以及pythonwrite属性而且还会将它能用在python编程之中的什么地方来进行说明.废话 ...
- python中readlines函数例子_Python遍历方法readline()和readlines()实例讲解
在进行Python项目开发(http://www.maiziedu.com/course/python/)中我们需要遍历一个大日志文件,在这个时候我们应该使用readlines()还是readline ...
- python中三级菜单讲解_Python字典实现简单的三级菜单(实例讲解)
导读热词 @H_403_2@如下所示: data = { "北京":{ "昌平":{"沙河":["oldboy",&qu ...
- [转载] python中pass的使用_Python pass详细介绍及实例代码
参考链接: Python pass语句 Python pass详细介绍及实例代码 Python pass的用法: 空语句 do nothing 保证格式完整 保证语义完整 以if语句为例,在c或c++ ...
- python中 是什么运算符_Python 运算符
Python 运算符 什么是运算符? 本章节主要说明Python的运算符.举个简单的例子4 +5 = 9. 例子中,4和5被称为操作数,"+"号为运算符. Python语言支持以下 ...
最新文章
- linux c 获取目录文件列表
- 手把手干货教学Matlab载波调制
- 清除被占用的8080端口,否则npm run dev无法正常运行
- Centos7 Minimal 版安装后安装图形界面教程
- 使用idea编写消费者,接收生产者的持续日志输出【小案例】(三)
- IBASE header change - read access sequence
- linux动态链接库软件,Linux 动态链接库
- 模态框里使IMG的Src能动态显示
- 并发请求多 服务器响应慢 post,【转】吞吐量、QPS(TPS)、并发数、RT性能指标及ab并发测试...
- 安卓刷机及刷机包制作教程
- 一行代码教你屏蔽你的博客广告
- 八戒帮扶V5微信公众平台任务系统完美运营v1.5.8
- 第四周项目3--单链表应用之递增判断
- Unity人物角色动画系统学习总结
- 腐蚀rust服务器命令_腐蚀Rust游戏指令大全 全游戏指令一览
- AE470 卡通元素动画视频字幕预设手绘歌词文字标题效果制作AE片头
- 使用JQuery删除html页面中的元素
- python实现剪刀石头布小游戏
- 【重识云原生】第六章容器6.4.2.3节——Pod使用(下)
- 金融的本质是什么?终于有人讲清楚了!(源于网络)
热门文章
- nest.js实战之Filter异常处理
- 基于Gitee/Github搭建个人博客
- Gardon的18岁生日
- linux 查看文件列表,linux显示文件列表命令ls,使用ls --help列出所有命令参数
- 食物中的天然“血管保护伞”,最好每周吃一次,血管清,人长寿!
- spark decimal(38,18)超出38限制的思考
- 华大HC32A460 系列介绍(四)
- QT5.14.1简单实现百度语音识别(附源码)
- STM32F103ZET6+新建工程+点灯实验
- 专业音视频播放器:Elmedia Video Player Pro mac中文版