数据相关性分析中,经常用到data.corr()函数,data.corr()表示了data中的两个变量之间的相关性,取值范围为[-1,1],取值接近-1,表示反相关,类似反比例函数,取值接近1,表正相关。
DataFrame.corr()函数使用说明如下:
1 2 3 4 5 6 7 8 9 | DataFrame.corr(method='pearson', min_periods=1) 参数说明: method:可选值为{<!-- -->‘pearson’, ‘kendall’, ‘spearman’} pearson:Pearson相关系数来衡量两个数据集合是否在一条线上面,即针对线性数据的相关系数计算,针对非线性 数据便会有误差。 kendall:用于反映分类变量相关性的指标,即针对无序序列的相关系数,非正太分布的数据 spearman:非线性的,非正太分析的数据的相关系数 min_periods:样本最少的数据量 返回值:各类型之间的相关系数DataFrame表格。 |
首先创建数据
1 2 3 4 5 6 | import seaborn as sns import numpy as np import pandas as pd data = pd.DataFrame([[1,6,7,5,1],[2,10,8,3,4],[3,4,0,10,2]],columns=['val1','val2','val3','val4','val5']) data |
各变量数据相关性的热力图
1 | sns.heatmap(data.corr(),linewidths=0.1,vmax=1.0, square=True,linecolor='white', annot=True) |
从图中可以看出,val2和val3的相关性最高为0.83,其次是val2和val5。