1 基本使用方法
DataFrame.corr(method='pearson', min_periods=1, numeric_only=False)
2 主要参数
method {‘pearson’, ‘kendall’, ‘spearman’} 或可调用对象
Pearson 相关系数
变量之间线性关系的强度和方向。取值范围在 -1 到 +1 之间,其中 +1 表示完全正相关,-1 表示完全负相关,0 表示无相关。适用于两个变量均为连续数据且大致呈正态分布时 Kendall Tau相关系数
评估两个变量之间的序数关联 比Pearson相关系数对异常值更不敏感。适用于数据不满足正态分布、样本量较小或数据为序数变量时。Spearman等级相关
测量两个变量值与其对应的排名之间的相关性。同样,取值范围为 -1 到 +1。可调用对象:输入为两个一维 ndarray,返回一个浮点数。
需要注意的是,corr 返回的矩阵在对角线上将是 1,并且无论可调用对象的行为如何,都会是对称的。
3 举例
df = pd.DataFrame([(.2, .3), (.0, .6), (.6, .0), (.2, .1)],
columns=['dogs', 'cats'])
df
'''
dogs cats
0 0.2 0.3
1 0.0 0.6
2 0.6 0.0
3 0.2 0.1
'''
df.corr()
'''
dogs cats
dogs 1.000000 -0.851064
cats -0.851064 1.000000
'''
def histogram_intersection(a, b):
v = np.minimum(a, b).sum()
return v
'''
自定义函数:输入两列,返回一个数值
'''
df.corr(method=histogram_intersection)
'''
dogs cats
dogs 1.0 0.3
cats 0.3 1.0
'''
好文阅读
发表评论