5.散点图矩阵 pd.plotting.scatter_matrix

pd.plotting.scatter_matrix(iris_dataframe, c=y_train, figsize=(15,15), marker=‘0’, hist_kwds={‘bins’:50},s=60,alpha=.8, cmap=mglearn.cm3)
结果:
在这里插入图片描述

  1. pd.scatter_matrix若不可用。
    用pd.plotting.scatter_matrix替换掉pd.scatter_matrix即可。
  2. 第一个参数 dataframe:iris_dataframe 按行取数据
    第二个参数 c=c=y_train 颜色,用不同着色度区分不同种类
    三:figsize=(15,15) 图像区域大小,英寸为单位
    四:marker=‘0’ 点的形状,0是圆,1是¥
    五: hist_kwds={‘bins’:50} 对角线上直方图的参数元组
    六:s=60 描出点的大小
    七:alpha=.8 图像透明度,一般取(0,1]
    八:cmap=mglearn.cm3 mylearn实用函数库,主要对图进行一些美化等私有功能,可见https://github.com/YifengChu/introduction_to_ml_with_python

(代码来自《python机器学习基础教程》)
Q:
如何理解给出的图?如何分析关联性、变量分布?

A: 这张图分为两部分:对角线部分和非对角线部分。
对角线部分: 核密度估计图(Kernel Density Estimation),就是用来看某 一个 变量分布情况,横轴对应着该变量的值,纵轴对应着该变量的密度(可以理解为出现频次)。
非对角线部分:两个 变量之间分布的关联散点图。将任意两个变量进行配对,以其中一个为横坐标,另一个为纵坐标,将所有的数据点绘制在图上,用来衡量两个变量的关联度(Correlation)。关于如何分析关联度,可以参考 Wiki:correlation and dependence16。
对这个问题,你还可以参考论坛中的这个帖子:从散列图看数据相关性。

你把图画出来以后,你会看到比如上面的散点图,那么比如说数据的分布可能是像一条线那就是线性的这种。就是你可以充分联想一下它和你见过的哪些函数曲线会类似。

可以使用相关系数,量化方式查看相关性

In [1]: import pandas as pd

In [2]: import numpy as np

In [3]: df = pd.DataFrame(np.array([[1, 2, 3], [100, 9, 6], [0, 78, 9]]).T, columns=[‘A’, ‘B’, ‘C’])

In [4]: df.corr()

Out[4]: A B C

A 1.000000 -0.879722 0.105453

B -0.879722 1.000000 -0.565606

C 0.105453 -0.565606 1.000000

相关性越高,证明一个特征可有另一个特征得到,所以两个特征中可以适当舍去一个

对角线上的是概率密度分布图(轴上的坐标不适用)
其它都是散点图(轴上的坐标适用)

x=y表示两者不相关
来自 https://blog.csdn.net/zhuiqiuuuu/article/details/82721962

  • 10
    点赞
  • 83
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值