Python计算两个数组的相关系数

  统计/机器学习 描述性统计 Python    浏览次数:13941        分享
3

我现在是自己写的小函数来计算相关系数的。Python里有没有现成的函数能够计算两个数组的相关系数的?

 

我是老王   2017-02-27 13:01



   3个回答 
10

还有一种是numpy.corrcoef。这个可以可以求多个数组的相关系数。

比如要求a,b,c,d两两之间的相关系数。 

import numpy as np
np.corrcoef([a,b,c,d])

得到一个4乘4的对称矩阵,矩阵元素就是相关系数。

SofaSofa数据科学社区DS面试题库 DS面经

KingBug   2017-03-07 10:14

5


>>> import scipy.stats as stats
>>> a = [1.2, 1.5, 1.9]; b = [2.2, 2.5, 3.1]
>>> stats.pearsonr(a,b)
(0.99419162560192009, 0.068648785502029797)

返回的第一个数0.99419就是a和b的相关系数。第二个数0.0686是以a和b不同为零假设下的p值。

SofaSofa数据科学社区DS面试题库 DS面经

高代兄   2017-03-06 23:03

2

如果数据在pandas的DataFrame里的话,可以直接调用df.corr(),这个应该是最方便的了

>>> import pandas as pd
>>> df = pd.DataFrame()
>>> df['a'] = [1, 3, 2, 4]
>>> df['b'] = [1, 2, 3, 5]
>>> df.corr()
         a	            b
a	1.000000	    0.831522
b	0.831522	    1.000000
SofaSofa数据科学社区DS面试题库 DS面经

MangoCoke   2018-04-01 21:47



  相关主题

有序分类变量的相关系数   2回答

如果x是等级变量, y是连续变量 相关分析是不是用speaman   1回答

如何对两个名义分类变量的关联性进行可视化展示?   2回答

相关系数的p值是怎么算的?   2回答

对两个相关系数做显著性的假设检验?   1回答

相关中的效率指啥??   1回答

超几何分布几何分布的关联?   2回答

关于Python中 theano的相关问题   1回答

回归中自变量和因变量的相关系数和回归系数(斜率)有什么关系?   3回答

一个连续变量和一个二元变量的相关系数怎么求?   2回答

为啥计算pearson相关系数和线性回归的coef不同呢   2回答

特征相关性高的影响   2回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!