np.corrcoef()方法计算数据皮尔逊积矩相关系数(Pearson's r)

Posted liulangmao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了np.corrcoef()方法计算数据皮尔逊积矩相关系数(Pearson's r)相关的知识,希望对你有一定的参考价值。

上一篇通过公式自己写了一个计算两组数据的皮尔逊积矩相关系数(Pearson‘s r)的方法,但np已经提供了一个用于计算皮尔逊积矩相关系数(Pearson‘s r)的方法 np.corrcoef() :

a = pd.Series([1,2,3,4,5,6,7,8,9,10])
b = pd.Series([2,4,1,5,1,3,6,2,7,0])
c = pd.Series([0,3,2,1,4,7,1,9,6,2])
x = np.vstack((a,b,c))
r = np.corrcoef(x)
print(r)
[[1.         0.10233683 0.47840854]
 [0.10233683 1.         0.0242104 ]
 [0.47840854 0.0242104  1.        ]]

需要注意的是, np.corrcoef() 接受的参数是一个矩阵,返回的结果也是一个矩阵

以上面的代码为例: a,b,c 分别为第 0,1,2 组数组,返回的矩阵结果 r[i][j] 分别为第 i 组数据和第 j 组数据的皮尔逊积矩相关系数:

 r[0][0] 计算的是第 [0] 组数组和第 [0] 组数据的相关系数,也就是 a 和 a,结果当然是1.

 r[0][1] 计算的是第 [0] 组数组和第 [1] 组数据的相关系数,也就是 a和 b,结果是0.10233683

 r[2][0] 计算的是第 [2] 组数组和第 [0] 组数据的相关系数,也就是 c和 a,结果是0.47840854

 

以上是关于np.corrcoef()方法计算数据皮尔逊积矩相关系数(Pearson's r)的主要内容,如果未能解决你的问题,请参考以下文章

求问:余弦相似度和皮尔逊相关系数的区别

如何用matlab计算皮尔逊相关系数

如何理解皮尔逊相关系数

如何理解皮尔逊相关系数

如何理解皮尔逊相关系数

皮尔森相关系数的介绍