Python-Regression
本文归纳整理了线性回归(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 axisax=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学习笔记,不以盈利为目的,纯手工码字不容易,若整理的笔记中,对您有所助益,麻烦点个赞或者收藏,万分感谢!如有构成侵权的地方,请联系作者删除,谢谢合作!
Python-Regression相关推荐
- 编程王 kingofcoders.com
欢迎您 频道 Java .net c++ php VB SQL Server PostgreSQL 开源 Solaris BSD Linux Microsoft Mysql Oracle Bo ...
- 顶尖高手2019_2019顶尖的在线数据科学课程
顶尖高手2019 After over 80+ hours of watching course videos, doing quizzes and assignments, reading revi ...
- Python使用matplotlib可视化散点图、使用seaborn中的lmplot函数可视化不同分组散点图的最优线性回归拟合曲线(Scatter plot with regression line)
Python使用matplotlib可视化散点图.使用seaborn中的lmplot函数可视化不同分组散点图的最优线性回归拟合曲线(Scatter plot with linear regressio ...
- Python使用sklearn和statsmodels构建多元线性回归模型(Multiple Linear Regression)并解读
Python使用sklearn和statsmodels构建多元线性回归模型(Multiple Linear Regression)并解读 #仿真数据集(预测股票指数) 这里的目标是根据两个宏观经济变量 ...
- Python使用sklearn构建广义线性模型:泊松回归(Poisson regression)实战
Python使用sklearn构建广义线性模型:泊松回归(Poisson regression)实战 目录 Python使用sklearn构建广义线性模型:泊松回归(Poisson regressio ...
- Python使用sklearn构建广义线性模型:gamma回归(Gamma regression)实战
Python使用sklearn构建广义线性模型:gamma回归(Gamma regression)实战 目录 Python使用sklearn构建广义线性模型:gamma回归(Gamma regress ...
- Python使用sklearn构建广义线性模型:Tweedie回归(Tweedie regression)实战
Python使用sklearn构建广义线性模型:Tweedie回归(Tweedie regression)实战 目录 Python使用sklearn构建广义线性模型:Tweedie回归(Tweedie ...
- python中的linearregression_【python+机器学习(2)】python实现Linear Regression
欢迎关注哈希大数据微信公众号[哈希大数据] python实现多元线性回归算法(lr) 想必大家在很早之前就接触过函数的概念,即寻找自变量和因变量之间的对应关系,一元一次.多元一次.一元二次等等,表示的 ...
- python训练模型函数参数_一步步亲手用python实现Logistic Regression
前面的[DL笔记1]Logistic回归:最基础的神经网络和[DL笔记2]神经网络编程原则&Logistic Regression的算法解析讲解了Logistic regression的基本原 ...
- python pandas库实现逻辑回归拟牛顿法求参数_python 牛顿法实现逻辑回归(Logistic Regression)...
本文采用的训练方法是牛顿法(Newton Method). 代码 import numpy as np class LogisticRegression(object): ""&q ...
最新文章
- 包装类接受string 会自动将数字类型string转换成对应得包装类型
- 1.5亿重奖50位青年科学家!第二届“科学探索奖”揭晓
- 项目中基于Rest的Wcf服务发布以及iBatisNet框架的使用(下)
- css3学习 之 css选择器(css3 属性选择器)
- 基于pygtk的linux有道词典
- 魔幻艰难的2020上半年!
- ios支付宝支付失败不回调_iOS 支付宝网页支付回调问题
- Apache孵化器主席Justin Mclean:如何成为Apache顶级开源项目
- nodemcu固件_从无到有玩NodeMcu:web端控制
- PDF超过6000页,OMG,学它
- scala 主构造器_Scala主构造器深度
- linux上安装docker,并且安装上数据库
- diybox路由器设置教程_一个简单的无线路由器入门设置教程,非常实用
- python五分制转分数档_申请留学高校时,换算GPA使用百分制成绩还是五分制成绩?...
- 用Python求1~1万范围内的勾股数元组
- Leetcode刷题——栈与队列
- 面向对象_大纲 by霹雳火毕老师
- 既生 useState 何生 useReducer (主讲useReducer)
- Spring集成JMS入门
- 数据分析实践——面试官:如果DAU下降如何归因?(以抖音为例)