# -*- coding: utf-8 -*-
'''
Created on 2018年1月24日
@author: Jason.F
@summary: 有监督回归学习-多元线性回归的性能评估
'''
import pandas as pd
import numpy as np
import time
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.cross_validation import train_test_split
from sklearn.metrics import mean_squared_error
from sklearn.metrics import r2_score
if __name__ == "__main__":   start = time.clock()     #导入波士顿房屋数据集df=pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/housing/housing.data',header=None,sep='\s+')df.columns=['CRIM','ZM','INDUS','CHAS','NOX','RM','AGE','DIS','RAD','TAX','PTRATIO','B','LSTAT','MEDV']X=df.iloc[:,:-1].valuesy=df['MEDV'].values#房间价格X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3,random_state=0)slr=LinearRegression()slr.fit(X_train,y_train)y_train_pred=slr.predict(X_train)y_test_pred = slr.predict(X_test)#可视化残差值和预测值plt.scatter(y_train_pred,y_train_pred-y_train,c='blue',marker='o',label='Training data')plt.scatter(y_test_pred,y_test_pred-y_test,c='lightgreen',marker='s',label='Test data')plt.xlabel('Predicted values')plt.ylabel('Residuals')plt.legend(loc='upper left')plt.hlines(y=0,xmin=-10,xmax=50,lw=2,colors='red')plt.xlim([-10,50])plt.show()#评估均方误差print ('MSE train: %.3f,test:%.3f' % (mean_squared_error(y_train,y_train_pred),mean_squared_error(y_test,y_test_pred)))#评估决定系数(coefficient of determination),是MSE的标准化print ('R^2 train: %.3f,test:%.3f' % (r2_score(y_train,y_train_pred),r2_score(y_test,y_test_pred)))end = time.clock()    print('finish all in %s' % str(end - start))   

结果:

MSE train: 19.958,test:27.196
R^2 train: 0.765,test:0.673
finish all in 12.8996295796

【Python-ML】SKlearn库多元线性回归性能评估相关推荐

  1. 【机器学习个人笔记】part3——用sklearn实现多元线性回归

    [机器学习个人笔记]part3--用sklearn实现多元线性回归 简单线性回归可以看做是y = ax + b的函数,多元线性函数则可以看做是y = ax1 + bx2 + cx3 + d的函数. 简 ...

  2. numpy多元线性回归_使用sklearn实现多元线性回归

    使用sklearn实现多元线性回归 多元线性回归 import pandas as pdimport numpy as npimport matplotlib.pyplot as pltfrom sk ...

  3. Python安装sklearn库时出现异常:ERROR: Could not install packages due to an EnvironmentError: [Errno 2]

    文章目录 一.问题描述 二.问题解决 一.问题描述 今天在学习python机器学习时,需要安装python的sklearn库,在安装的过程中出现了以下错误 上CSDN上找了好多文章,都没办法解决问题 ...

  4. Python数据分析案例-利用多元线性回归与随机森林回归算法预测笔记本新品价格

    1.前言 目的: 本文通过多元线性回归与随机森林算法预测笔记本新品的发售价 工具: 语言:Python 3.8 软件:Jupyter Notebook 库:pandas.numpy.matplotli ...

  5. 使用sklearn库学习线性回归(一)

    目录 1,概述 1.1,判别式方法 1.2,线性回归介绍 1.3,sklearn中的线性回归 2,多元线性回归LinearRegression 2.1,多元线性回归的基本原理 2.2,最小二乘法求解多 ...

  6. python梯度下降法实现线性回归_梯度下降法的python代码实现(多元线性回归)

    梯度下降法的python代码实现(多元线性回归最小化损失函数) 1.梯度下降法主要用来最小化损失函数,是一种比较常用的最优化方法,其具体包含了以下两种不同的方式:批量梯度下降法(沿着梯度变化最快的方向 ...

  7. 使用sklearn库学习线性回归(二)

    目录 1,多重共线性问题(Ridge回归和Lasso回归) 1.1,什么是多重共线性 1.2,多重共线性和相关性 2,岭回归(Ridge) 2.1,岭回归解决多重共线性问题 2.2,linear_mo ...

  8. sklearn 线性回归_使用sklearn库做线性回归拟合

    背景资料 随着海拔高度的上升,温度越来越低,经过气象专家的研究,在一定的海拔高度范围内,高度和温度呈线性关系.现有一组实测资料,我们需要对这些数据进行处理拟合,获得此线性关系. 解决思路 采用skle ...

  9. python多元线性回归实例_利用Python进行数据分析之多元线性回归案例

    线性回归模型属于经典的统计学模型,该模型的应用场景是根据已知的变量(自变量)来预测某个连续的数值变量(因变量).例如,餐厅根据每天的营业数据(包括菜谱价格.就餐人数.预定人数.特价菜折扣等)预测就餐规 ...

最新文章

  1. HTML中nbsp; ensp; emsp; thinsp;等6种空白空格的区别
  2. 微型计算机所组装的流程图是,计算机、微型计算机的组成及工作过程.ppt
  3. vue数组刷新_Vue中数组更新后,页面没有动态刷新问题
  4. 常用技巧 —— 离散化
  5. ONVIF协议实现1:Server端Discovery的实现详解
  6. 物联网-移远M26模块OpenCPU开发第1讲
  7. python multiprocessing.Process 应用
  8. 15款值得开发者一试的最新的前端框架
  9. 深度学习框架PyTorch:入门与实践 学习(二)
  10. web 打印插件 hiprint 使用
  11. 【多任务学习-Multitask Learning概述】
  12. 中兴服务器isac配置,中兴AC设备对接Portal认证
  13. linux上传下载覆盖文件的命令
  14. USB数据采集卡关于高电压数据采集提供的解决方案
  15. 怎么提供电子邮件副本_停止提供您的电话号码和电子邮件
  16. 使用canvas将多张图片合并为一张
  17. Spring容器是什么?为什么要使用Spring容器?
  18. 后端/Java/大数据/C++ 校招内推面经
  19. 单个正态总体均值的区间估计_总体均值的区间估计 (正态总体: σ2 已知实例).pdf...
  20. 重启随机游走(RWR)算法

热门文章

  1. Java基础:成员变量的继承与覆盖
  2. Ansible之playbook(剧本)介绍和配置详解
  3. mysql数据库的字符集问题和存储引擎
  4. 无法找到脚本文件adsutil.vbs的解决方法
  5. Windows server 2008 iis7/iis7.5启用父路径的方法
  6. postgres外部表
  7. SHUoj 字符串进制转换
  8. HDU 3973 AC's String 字符串哈希
  9. [爬虫]通过url获取连接地址中的数据
  10. 2015 编程之美 八卦的小冰