在数据分析时,经常会针对两个变量进行相关性分析。在 Python 中主要用到的方法是pandas中的corr()方法。

corr():如果由数据框调用corr函数,那么将会计算每个列两两之间的相似度,返回DataFrame

corr(other):如果由序列调用corr方法,那么只是该序列与传入的序列之间的相关度,返回一个数值型,大小为相关度

我们以pandas.DataFrame.corr()为例进行详细说明:

DataFrame.corr(method=’pearson’, min_periods=1)

method : 指定相关系数的计算方式,可选性为:{‘pearson’,‘kendall’,‘spearman’} pearson :皮尔逊相关系数

kendall :kendall秩相关系数

spearman :斯皮尔曼等级相关系数

min_periods : int, optional,指定每列所需的最小观察数,可选,目前只适合用在pearson和spearman方法。

线性相关关系通常采用皮尔逊(Pearson)相关系数r来度量连续变量之间线性相关强度

r>0:线性正相关

r<0:线性负相关

r=0:两个变量之间不存在线性关系(并不代表两个变量之间不存在任何关系)

线性相关系数|r|的取值范围:

低度相关:0 <= |r| <= 0.3

中度相关:3 <= |r| <= 0.8

高度相关:8 <= |r| <= 1

相关性的可视化呈现:

from string import ascii_letters

import numpy as np

import pandas as pd

import seaborn as sns

import matplotlib.pyplot as plt

sns.set(style="white")

# Generate a large random dataset

rs = np.random.RandomState(33)

d = pd.DataFrame(data=rs.normal(size=(100, 26)),

columns=list(ascii_letters[26:]))

# Compute the correlation matrix

corr = d.corr()

# Generate a mask for the upper triangle

mask = np.zeros_like(corr, dtype=np.bool)

mask[np.triu_indices_from(mask)] = True

# Set up the matplotlib figure

f, ax = plt.subplots(figsize=(11, 9))

# Generate a custom diverging colormap

cmap = sns.diverging_palette(220, 10, as_cmap=True)

# Draw the heatmap with the mask and correct aspect ratio

sns.heatmap(corr, mask=mask, cmap=cmap, vmax=.3, center=0,

square=True, linewidths=.5, cbar_kws={"shrink": .5})

plt.show()

参考链接:

python分析数据的相关性_使用Python进行相关性分析相关推荐

  1. python 处理数据小工具_用Python这个小工具,一次性把论文作图与数据处理全部搞定!...

    原标题:用Python这个小工具,一次性把论文作图与数据处理全部搞定! 一入科研深似海-- 随着大学纷纷开学,"防脱发用生姜还是黑芝麻?", 研究僧们又开始为自己所剩无几的头发发愁 ...

  2. python处理数据的包_在Python中利用Into包整洁地进行数据迁移的教程

    动机 我们花费大量的时间将数据从普通的交换格式(比如CSV),迁移到像数组.数据库或者二进制存储等高效的计算格式.更糟糕的是,许多人没有将数据迁移到高效的格式,因为他们不知道怎么(或者不能)为他们的工 ...

  3. 利用tabluea分析数据的案例_利用德温特分析Dartsip的案例检索结果

    德温特创新平台(Derwent Innovation)与Darts-ip知识产权案例数据库均是科睿唯安旗下的知识产权数据库,虽然这两个数据库的侧重点分别在于专利信息与知识产权判例,但若将两者结合使用则 ...

  4. python对数据进行统计分析_用Python结合统计学知识进行数据探索分析

    二项分布 二项分布是n个独立的是/非试验中成功的次数的概率分布,其中每次试验的成功概率为p.这是一个离散分布,所以使用概率质量函数(PMF)来表示k次成功的概率: 最常见的二项分布就是投硬币问题了,投 ...

  5. python实现数据可视化软件_基于Python实现交互式数据可视化的工具

    作者:Alark Joshi 翻译:陈雨琳 校对:吴金笛 本文2200字,建议阅读8分钟. 本文将介绍实现数据可视化的软件包. 这学期(2018学年春季学期)我教授了一门关于数据可视化的数据科学硕士课 ...

  6. python读取数据文件夹_使用python依次读取文件中的所有csv格式的数据

    使用python依次读取文件中的所有csv格式的数据: #coding=gbk import pandas as pd import os path = r'D:\ml_datasets\PHM\c6 ...

  7. python将数据做直方图_用python 制作直方图

    利用jupyter notebook 软件制作 一.导入文件 方法1: 打开电脑命令符,直接输入jupyter notebook 电脑在浏览器下直接打开 jupyter notebook界面 点击up ...

  8. python学生数据完善程序_「Python」每日一练:学生数据完善程序

    编程题 1.现有一程序已创建了4个列表,这4个列表中有添加元素,但列表中的数据不完善,有一定的错误,内容如下所示: list1=["学号","姓名"," ...

  9. python遥感数据有偿处理_利用python读写tiff遥感影像数据

    from osgeo import gdal # 读图像文件 def read_img(filename): dataset = gdal.Open(filename) # 打开文件 im_width ...

  10. python csv数据所在行_使用python获取csv文本的某行或某列数据的实例

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

最新文章

  1. 轮盘赌算法的简单说明
  2. python代码需要背吗-Python 的库、方法这么多,写程序的时候能记住吗?
  3. 【MySQL】navicat for mysql 10.1.7注册码
  4. Android之如何ubuntu环境下在手机里面快速找到apk的位置然后拉下来
  5. python 读中文乱码_python字符乱码的解决小结
  6. db2数据库还原找不到文件_db2数据库还原
  7. Chrome浏览器获取XPATH的方法----通过开发者工具获取
  8. 远程通信(RPC,Webservice,RMI,JMS、EJB、JNDI的区别)对比
  9. 8个成语接龙首尾相连_小学经典成语200个,已按场景分类好,孩子写作不再词穷...
  10. python中dtype与dtypes区别
  11. asp.net 获取当前页面html代码,在asp.net中获取当前页面的URL的方法(推荐)
  12. Jieba词性对照表
  13. win7网络改局域网计算机名,教你win7局域网设置方法
  14. Windows10怎么让某个软件禁止联网?设置软件禁止联网的方法
  15. 《Thinking in java》-学习笔记(9)
  16. ndoutils(ndo2db)安装难点
  17. 解读Vue项目文件目录结构,实例化Vue对象,数据和方法
  18. 绘制螺旋线java_Python实现的绘制三维双螺旋线图形功能示例
  19. 分享逻辑思维导图模板,需要的自取进行编辑使用
  20. 基于SSH网上体育用品销售系统

热门文章

  1. laravel框架的whereIn条件或者where条件里面的in条件怎么写
  2. android6.0原生壁纸,安卓6.0原生壁纸 androidM6.0自带高清壁纸下载
  3. 全球与中国无线视频门铃对讲机市场深度研究分析报告
  4. ADP网站服务器,手把手帮您win7系统搭建adp本地服务器的方案
  5. linux系统start x,linux的startx问题
  6. 在职MBA与普研、MEM是有区别的
  7. Office EXCEL如何批量把以文本形式存储的数字转换为数字
  8. 基于stm32无线充电器设计
  9. CorelDRAW X8超低价优惠啦,你却还在用CDR X4破解?!
  10. 【CodeForces300D】Painting Square