python如何计算两组数据的相关性

背景

最近测试的一个需求里,需要计算两组数据的相关性,看了一下计算公式,当数据量过大时,发现是我无法手动可以计算完成的。

 但是如果不对得到的数据进行校验的话,那就不知道开发算出来的值是否有问题。于是想起来用python试试能不能找到对应的计算公式。

过程

果然搜索了一下,python是可以计算两组数据的相关性的。但找到的文章大部分解决的都是多位数组的相关性,比如输入的结果都是矩阵数据类型的,而我要处理的只是2组1维数据而已,搞的那么复杂真是没必要啊。

于是在我执着地搜索下,终于找到了新的方案——使用python的spicy库

scipy是一个用于数学、科学、工程领域的常用软件包,可以处理插值、积分、优化、图像处理、常微分方程数值解的求解、信号处理等问题。它用于有效计算Numpy矩阵,使Numpy和Scipy协同工作,高效解决问题。

需要用到的是它的子模块stats(统计分布和函数)中的pearsonr,即可得到想要的结果。

from scipy import stats

def get_p_value(arrA, arrB):
    r = stats.pearsonr(arrA,arrB)  #输出的第一个值0.7676为相关系数;第二个值为p值,该值越小表明相关系数越显著
    return r

使用python,很多公式类的方法确实简单多了。

  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值