python散点矩阵图_用python-pandas作图矩阵

本文为一篇翻译文章,来自于Visualize Machine Learning Data in Python With Pandas - Machine Learning Mastery**,原文标题是Visualize Machine Learning Data in Python With Pandas(在Python里使用pandas对机器学习的数据进行可视化分析),作者的意思是我们在采用机器学习算法对数据进行分析时,首先要对数据进行了解,而了解数据最快速的方式就是可视化。但是作者可视化采用的方法对很多data都通用,且采用的是各种图形的图矩阵,如直方图、散点图矩阵等等。本文就根据作者的分析来介绍如何运用pandas作各种矩阵图。统计类专业,喜欢数据分析、可视化、数据挖掘、大数据,历史、文学等

一、数据

数据为Pima Indians dataset,在作者的代码中包含该数据来源网址,即皮马印第安人糖尿病数据集,样本个数有768个,包含变量有:

Preg:怀孕次数

Plas:口服葡萄糖耐量试验中血浆葡萄糖浓度为2小时

Pres:舒张压(mm Hg)

Skin:三头肌皮褶厚度(mm)

test :2小时血清胰岛素(μU/ ml)

mass:体重指数(kg /(身高(m))^ 2)

pedi:糖尿病血统功能

age:年龄(岁)

class:类变量(0或1),估计是性别。

二、Histograms(直方图矩阵)url = "https://archive.ics.uci.edu/ml/machine-learning-databases/pima-indians-diabetes/pima-indians-diabetes.data"

names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class'] #设置变量名

data = pandas.read_csv(url, names=names) #采用pandas读取csv数据

data.hist()

plt.show()

直方图矩阵.png

但是,我们看到图形并不协调,存在变量与坐标重叠的情况,我们可以调整hist()的参数来解决,包括对x轴、y轴标签大小的调节((xlabelsize,ylabelsize),整个图形布局大小的调节figsize:data.hist(xlabelsize=7,ylabelsize=7,figsize=(8,6)) #

plt.show()

直方图矩阵1.png

可以看到每一个变量的分布情况,其中mass、plas、pres呈现一定的正态分布,其他除了class之外,基本上左偏。

三、Density Plots(密度图矩阵)data.plot(kind='density', subplots=True, layout=(3,3), sharex=False,fontsize=8,figsize=(8,6))

plt.show()

原始代码输出后仍然存在重叠的地方,在这里加入了对图中坐标文字fontsize,以及整体布局大小figsize。

密度图.png

四、箱线图矩阵(Box and Whisker Plots)data.plot(kind='box', subplots=True, layout=(3,3), sharex=False, sharey=False, fontsize=8,figsize=(8,6))

plt.show()

与(3)类似,在这里注意可以共享x轴和y轴,用了sharex=False, sharey=False的命令。

箱线图.png

五、相关系数矩阵图(Correlation Matrix Plot)import numpy

correlations = data.corr() #计算变量之间的相关系数矩阵

# plot correlation matrix

fig = plt.figure() #调用figure创建一个绘图对象

ax = fig.add_subplot(111)

cax = ax.matshow(correlations, vmin=-1, vmax=1) #绘制热力图,从-1到1

fig.colorbar(cax) #将matshow生成热力图设置为颜色渐变条

ticks = numpy.arange(0,9,1) #生成0-9,步长为1

ax.set_xticks(ticks) #生成刻度

ax.set_yticks(ticks)

ax.set_xticklabels(names) #生成x轴标签

ax.set_yticklabels(names)

plt.show()

相关系数矩阵.png

颜色越深表明二者相关性越强。

六、散布图矩阵(Scatterplot Matrix)from pandas.tools.plotting import scatter_matrix

scatter_matrix(data,figsize=(10,10))

plt.show()

散布图矩阵.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/245969.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java哪些是线程安全的_Java集合中那些类是线程安全的

线程安全类在集合框架中,有些类是线程安全的,这些都是jdk1.1中的出现的。在jdk1.2之后,就出现许许多多非线程安全的类。 下面是这些线程安全的同步的类:vector:就比arraylist多了个同步化机制(线程安全),因…

python求斐波那契数列第n个数及前n项和_使用python求斐波那契数列中第n个数的值示例代码...

使用python求斐波那契数列中第n个数的值示例代码,数列,递归,方法,兔子,个数使用python求斐波那契数列中第n个数的值示例代码易采站长站,站长之家为您整理了使用python求斐波那契数列中第n个数的值示例代码的相关内容。斐波那契数列(Fibonacci sequence),…

java org.apache.http_org.apache.http jar包下载-org.apache.http.jar包下载 --pc6下载站

org.apache.http.jar包是一款十分常用的jar包如果没有org.apache.http.jar包Apache与http的链接将会出现错误等现象马上下载org.apache.http.jar包。。相关软件软件大小版本说明下载地址org.apache.http.jar包是一款十分常用的jar包,如果没有org.apache.http.jar包,Apache与htt…

网络连接异常、网站服务器失去响应_网站常见故障解决办法

网站在运行过程中,常常遇到各种服务器问题,虽然有服务器厂商的维护,但是往往耗时耗工小编对常见的服务器问题,进行了归纳整理,下面跟各位分享一下。常见故障分析一、恶意攻击在我平时管理网站时,可能会遭到…

java编程能做什么_学习Java编程能做什么工作?

Java作为编程语言界最时髦流行的元老之一,现今在软件市场上也是宠儿,被各大企业广泛应用到生产中。在各种行业、各个企业的业务管理平台,如门户网站等许多方面都占据了主导地位。吸引着越来越多学习Java的各个不同年龄阶段的人群。学习Java的…

python如何关闭窗口仍能运行_Python在退出时关闭自己的CMD shell窗口

让我们首先分析两个发布的Python脚本行在执行Python脚本时真正做了些什么。感谢eryksun进行深入调查,真正使用Python导致正确的描述,现在可以在下面阅读。os.system()导致在前台使用控制台窗口执行cmd.exe /C并停止执行Python脚本,直到Window…

java一年包装_java回顾之包装类

Java包装类由于基本类型比如int,char不具有支持面向对象的编程机制,比如所有引用类型的变量都继承与Object,都可以当成Object使用,如果有个方法需要Object类型的参数,但是实际需要的值却是2,3等数值,这就比较难处理所以…

python3 sleep 并发_python异步编程之asyncio(百万并发)

点击上方蓝字关注我们目录[python 异步编程之 asyncio(百万并发)]一、asyncio二、aiohttp前言:python 由于 GIL(全局锁)的存在,不能发挥多核的优势,其性能一直饱受诟病。然而在 IO 密集型的网络编程里,异步处理比同步处理能提升成…

【Spring实战】02 配置多数据源

文章目录 1. 配置数据源信息2. 创建第一个数据源3. 创建第二个数据源4. 创建启动类及查询方法5. 启动服务6. 创建表及做数据7. 查询验证8. 详细代码总结 通过上一节的介绍,我们已经知道了如何使用 Spring 进行数据源的配置以及应用。在一些复杂的应用中,…

java getxxx_java的invoke与getMethod方法用法

和listener一起使用举例:需要在控件中监听某个动作:比如button点击,画面滚动等1.为控件定义一个属性:属性绑定一个方法xxxProperty "onPropertyXxxxFunc”2.首先自定义一个Listener// 在控件构造函数中获得控件属性的值xxxPr…

windows查看usb信息命令_【VPS】Linux VPS查看系统信息命令大全

本文转自老左笔记,自用mark系统# uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # lspci -tv # 列出所有PCI设备 # lsusb -tv # 列出所有USB设备 # lsmod # 列出加…

c++ 向量的值逆序输出_C++中vector的常用方法

前言在C中,vector是一个商业转载请联系作者获得授权,非商业转载请注明出处。十分有用的容器。它能像容器一样存放各种类型的对象,简单来说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。相较链表而言&…

java生成密码_java生成密码生成 | 学步园

一、根据当前日期生成MD5加密密码package com.test;import java.security.MessageDigest;import java.text.SimpleDateFormat;import java.util.Date;public class Md5Test {public void toMD5(String plainText) {try {//生成实现指定摘要原文链接:http://www.cnbl…

python怎么创建一个二维数组_python 创建二维数组的方法

废话不多说,直接上代码:#codingutf-8def two_di_demo1():a[]for i in range(10):a.append([])for j in range(10):a[i].append(0)print(a)def two_di_demo2():a[]for i in range(10):a.append([])for j in range(10):a[i].append(0)print(a)b [[0] * 10…

java导出excel到本地_POI导出Excel----导出到客户端(本地)

contentType"application/vnd.ms-excel;charsetutf-8"pageEncoding"utf-8"%>//导入要用的包import"org.apache.poi.hssf.usermodel.HSSFWorkbook"%>import"java.io.FileOutputStream"%>import"org.apache.poi.hssf.user…

无法初始化sftp协议。主机是sftp服务器吗?_WinSCP v5.15.3 免费的 开源图形化 SFTP 客户端...

WinSCP 是一个 Windows 环境下使用的 SSH 的开源图形化 SFTP 客户端。同时支持 SCP 协议。它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件。主要功能WinSCP 可以执行所有基本的文件操作,例如下载和上传。同时允许为文件和目录重…

java中组合_java中组合模式详解和使用方法

组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。这种模式创…

道客巴巴vip账号共享2020_腾讯视频VIP怎么两个手机通用?

理论上来说,腾讯视频VIP可以同时在3个设备上登录,但只能在2个设备上同时播放视频。这也就意味着,腾讯视频VIP可以在两个手机上同时使用。腾讯视频VIP基本可以分为微信区、QQ区,两者并不互通。近期腾讯视频手机端修改了登录规则&am…

python3示例_Python3 实例(七)

原标题:Python3 实例(七)Python 将字符串的时间转换为时间戳给定一个字符串的时间,将其转换为时间戳。实例import timea1 "2019-5-10 23:40:00"# 先转换为时间数组timeArray time.strptime(a1, "%Y-%m-%d %H:%M:%S")# 转换为时间戳…

java基础知识一_Java基础知识(一)

类与对象1.对象:客观存在的一切事物称之为对象类:具有相同属性和方法的对象的集合2.类:属性,方法3.修饰符:  public    protected               默认(不写)           private任何地…