Pearson相关系数公式的四种形式及Python代码实现

标签:
大数据分析数据挖掘数据科学家数据分析师 |
两个变量之间的皮尔逊相关系数定义为两个变量之间的协方差和标准差的商。
第一种形式(也就是定义的形式):
http://www.cda.cn/uploadfile/image/20180224/20180224071903_41243.png
第二种形式:
http://www.cda.cn/uploadfile/image/20180224/20180224071856_81686.png
第三种形式:
http://www.cda.cn/uploadfile/image/20180224/20180224071850_16092.png
第四种形式:
http://www.cda.cn/uploadfile/image/20180224/20180224071842_33469.png
(其中,E为数学期望或均值,N为数据的数目,E{ [X-E(X)] [Y-E(Y)]}称为随机变量X与Y的协方差,记为Cov(X,Y))
根据第四种形式的公式,使用python实现计算两列数据的pearson相关系数的代码:
from math import sqrt
def multiply(a,b):
def cal_pearson(x,y):
f=open('filename','r')
data={}
lines=f.readlines()
for line in lines:
x=data[0]
y=data[1]
if __name__=='__main__':
皮尔逊相关系数的适用范围:
当两个变量的标准差都不为零时,相关系数才有定义,皮尔逊相关系数适用于:
1. 两个变量之间是线性关系,都是连续数据。
2. 两个变量的总体是正态分布,或接近正态的单峰分布。
3. 两个变量的观测值是成对的,每对观测值之间相互独立。