Python-Regression

2023-11-05

本文归纳整理了线性回归(LinearRegression)、岭回归(Ridge)、Lasso回归(Lasso)、弹性网(ElasticNet)、K近邻、SVM等10多种机器学习模块sklearn中回归算法调用及实现过程,有需要的可以参考一下:

1.加载所需模块

import scipy
import mglearn
import numpy as np
import pandas as pd
import seaborn as sns 
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn import preprocessing
#Method:1-4
from sklearn import linear_model
from sklearn.linear_model import LinearRegression,Ridge,Lasso,ElasticNet
#Method:5-10
from sklearn import neighbors,svm,tree,ensemble
#Method:11-12
from sklearn.ensemble import BaggingRegressor
from sklearn.tree import ExtraTreeRegressor

2.各种回归调用方式

##2.Choose  Regression Method
model = []
#2.1 LinearRegression
model_LinearRegression = linear_model.LinearRegression()
model.append(model_LinearRegression)
#2.2 RidgeRegression
model_Ridge = Ridge()
model.append(model_Ridge)
#2.3 Lasso
model_Lasso=Lasso()
model.append(model_Lasso)
#2.4 ElasticNet
model_ElasticNET = linear_model.ElasticNet(alpha=0.1,l1_ratio=0.5)
model.append(model_ElasticNET)
#2.5 KNN Regression
model_KNeighborsRegressor = neighbors.KNeighborsRegressor()
model.append(model_KNeighborsRegressor)
#2.6 SVM Regression
model_SVR = svm.SVR()
model.append(model_SVR)
#2.7 DecisionTreeRegression
model_DecisionTreeRegressor = tree.DecisionTreeRegressor()
model.append(model_DecisionTreeRegressor)
#2.8 RandomForestRegression
model_RandomForestRegressor = ensemble.RandomForestRegressor(n_estimators=20)
model.append(model_RandomForestRegressor)
#2.9 Adaboost Regression
model_AdaBoostRegressor = ensemble.AdaBoostRegressor(n_estimators=50)
model.append(model_AdaBoostRegressor)
#2.10 GBRT Regression
model_GradientBoostingRegressor = ensemble.GradientBoostingRegressor(n_estimators=100)
model.append(model_GradientBoostingRegressor)
#2.11 Bagging Regression
model_BaggingRegressor = BaggingRegressor()
model.append(model_BaggingRegressor)
#2.12 ExtraTree Regression
model_ExtraTreeRegressor = ExtraTreeRegressor()
model.append(model_ExtraTreeRegressor)

3.加载数据

##3.Load data
path = '/home/Desktop/qqq.xlsx'
file = pd.read_excel(path,sheet_name='Sheet1')
data = file.copy()
#Data split
#X_data = data.iloc[:,1:]
#归一化处理
def regulait(df_X):
    df_scaler = preprocessing.MinMaxScaler()
    X_scaler = df_scaler.fit_transform(df_X)
    X_scaler = pd.DataFrame(X_scaler,columns=df_X.columns)
    return X_scaler
X_data = regulait(data.iloc[:,1:])
y_data = data.iloc[:,0]
X_train,X_test,y_train,y_test = train_test_split(X_data,y_data,test_size=0.2,random_state=0)

4.模型拟合及可视化

##4.Regression
def try_different_method(model):
    model.fit(X_train,y_train)
    score = model.score(X_test, y_test)
    result = model.predict(X_test)
    plt.figure(figsize=(10,8),dpi=200)
    plt.plot(np.arange(len(result)), y_test,'go-',label='true value')
    plt.plot(np.arange(len(result)),result,'ro-',label='predict value')
    plt.title("Model Score of  {}  is: {:.2f}".format(method,score))
    #Get axis
    ax=plt.gca()
    ax.spines['bottom'].set_linewidth(1)
    ax.spines['left'].set_linewidth(1)
    ax.spines['right'].set_linewidth(1)
    ax.spines['top'].set_linewidth(1)
    plt.grid(True)
    plt.legend()
    plt.show()

5.结果展示

##5.Method call
for method in model:
    try_different_method(method)

在这里插入图片描述


特别注明本文属于Python学习笔记,不以盈利为目的,纯手工码字不容易,若整理的笔记中,对您有所助益,麻烦点个赞或者收藏,万分感谢!如有构成侵权的地方,请联系作者删除,谢谢合作!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python-Regression 的相关文章

随机推荐

  • springboot集成定时任务框架quartz

    springboot集成定时任务框架quartz quartz框架可以很方便的执行定时任务 任务可以持久化到数据库中 这里使用的数据库为postgres 集成步骤 1 quartz和数据库驱动maven依赖
  • 关于写代码的习惯

    写代码 是一项复杂的工作 但是 代码的质量不仅在于代码的功能 还在于它是否条理清晰 简略易懂 以下内容是希望大家写代码时有好习惯 在正确的前提下 长循环放在内层 可以减少cpu跨切循环的次数 代码一定要简略易懂 不要做无效操作 这样做只会浪
  • matlab 提取图片ARGB8888数据,输出到TXT

    image imread ss png 读入图片 A rgb2gray image 提取A值的矩阵 R image 1 提取R值的矩阵 G image 2 提取G值的矩阵 B image 3 提取B值的矩阵 ranks R size R 提
  • 移植外设后可以跳转但显示未定义

    提示例如 GPC S axf Error L6218E Undefined symbol FLASH EraseSector int referred from protocolalarm o 原因就是C跟C 公用 c 引用了C的文件 C的
  • matlab内存管理

    转自 http my donews com deng 2006 09 24 vijgqxehmkxiruywdauvxyiafogtskeymhyw 用 Matlab 进行大规模科学计算或仿真时 内存是一个需要时常注意的问题 当你写的 Ma
  • 数据结构之基:从根儿上了解数据结构的特性

    学好数据结构 就等于成功了一半 程序是对现实的模拟 现实是由时间和空间组成的 高效的人都是用最少的时间 最少的空间来做最伟大的事 程序亦是如此 我们要选择最合理的算法和最合理的数据结构 来写最好的代码 这也正是时间复杂度和空间复杂度的要求
  • osgEarth获取显卡和硬件信息

    osgEarth Capabilities类负责获取显卡和硬件信息
  • 【单元测试】使用PowerMock框架进行Java静态方法的单元测试

    简介 一般来说 Java中的静态方法无法用传统的Jmock进行单测 这也就给研发人员和测试人员造成了一定的困扰 本文介绍一种使用PowerMock执行静态方法单元测试的手段 其实网上也有使用如Mockito的方法 大家可以自行搜索 静态方法
  • DSP的cache一般在何时会生效,防止在cache使用造成数据不一致

    在使用DSP的cache使能所有的ddr操作时 发现如果只是写操作 根据cache的机制 如果没有在了L1级hit 则直接使用write buffer来完成写操作 假如hit的话 那之前一定发生过读操作 比如移位某个字 肯定是先读入L2 L
  • C++ 序列化和反序列化

    序列化 序列化 1 背景 2 定义 3 序列化评价指标 4 序列化实例 参考 序列化 1 背景 1 在TCP的连接上 它传输数据的基本形式就是二进制流 也就是一段一段的1和0 2 在一般编程语言或者网络框架提供的API中 传输数据的基本形式
  • HFSS常用操作汇总

    HFSS常用操作 操作类 convert to read only 切角 Non Model 圆极化天线使用Discrete扫频 peakGain and GainTotal 局部区域的电流或电场等的分布 没收敛需要检查的地方 带状线设置l
  • Android界面-attrs自定义属性

    知识点 1 路径 values attrs xml 2 结构 根标签 下一级declare styleable 子标签为attr 3 arr标签 包含属性 name 该属性名称 format 该属性的值格式 子标签 enum 列举出固定的取
  • M个梨子放N个盘子

    M个梨子放N个盘子 题目描述 Macro非常喜欢吃梨 有一天他得到了ACMICPC组委会送给他的一筐梨子 他比较心疼学生 就打算把梨子分给学生吃 现在他要把M个梨子放到N个盘子里面 我们允许有的盘子为空 你能告诉Macro有多少种分法吗 请
  • 基于ResNet的MSTAR数据集目标分类

    基于ResNet的MSTAR数据集目标分类 文章目录 基于ResNet的MSTAR数据集目标分类 说在前面 1 MSART数据集介绍 2 SAR目标分类网络 3 ResNet代码及训练 4 结尾 附录 代码 说在前面 前两篇文章主要讨论了C
  • [网络安全自学篇] 一 web学习及异或解密

    开始学习杨秀璋老师的网络安全 文章会经过优化 来作为学习打卡的标志 本文为CSDN博主 Eastmount 的原创文章 一 工具 术语 1 网安术语 常见安全网站及论坛 看雪 https bbs pediy com 安全客 https ww
  • Vuejs——(7)过渡(动画)

    本篇资料来于官方文档 http cn vuejs org guide transitions html 本文是在官方文档的基础上 更加细致的说明 代码更多更全 简单来说 更适合新手阅读 二十四 过渡动画 过渡动画的定义 简单来说 就是当模块
  • Junit源码与设计模式欣赏

    先介绍下这篇博文的由来 之前已经对JUnit的使用经行了深入的介绍和演示 参考JUnit学习 一 JUnit学习 二 其中的部分功能是通过分析JUnit源代码找到的 得益于这个过程有幸完整的拜读了JUnit的源码十分赞叹作者代码的精美 一直
  • 2022人机交互-考题复习

    最下面有2022的人机交互考题 简答题 什么是人机交互 Human Computer Interaction HCI 是一门专注于设计 评估和实施供人类使用的交互式计算系统的学科 人类处理机模型 最著名的信息处理模型 Card等 1983
  • 自定义spring security oauth2 /oauth/token以及token失效/过期的返回内容格式

    前言 在整合Spring Security Oauth2的时候 获取token的接口 oauth token的返回内容格式为固定的 如下图所示 而token过期或者无效的返回参数格式如下图所示 实际在我们的项目中有时候会要求自定义返回内容格
  • Python-Regression

    本文归纳整理了线性回归 LinearRegression 岭回归 Ridge Lasso回归 Lasso 弹性网 ElasticNet K近邻 SVM等10多种机器学习模块sklearn中回归算法调用及实现过程 有需要的可以参考一下 1 加