np.corrcoef的作用

计算 Pearson 乘积矩相关系数。它可以用来分析给定数据集中各个变量之间的线性相关程度,返回一个相关系数矩阵,相关系数矩阵中的值介于 -1 到 1 之间,包括 -1 和 1。这些值表明了变量之间的线性相关性及其方向。具体来说,正值接近 1 表示正向线性相关,负值接近 -1 表示负向线性相关,而值接近 0 则表示无线性相关性。

np.corrcoef常用实例

计算二维矩阵的矩阵的相关系数,其中一个维度表示变量variable还有一个维度表示observation表示观测值,default是row表示variable, column表示observation

其实也比较好理解举个例子 矩阵[[1,2,3], [4,5,6], [7,8,9]],[1,2,3], [4,5,6],[7,8,9]表示三个随机变量而这三个随机变量本身也是一个向量,该向量表示该随机标量的观测值即observatin

1. 计算矩阵的皮尔逊系数(不带其他参数的)

使用np.corrcoef(data), data是一个矩阵,使用默认的row表示variable,column表示observation

import numpy as np 

rng = np.random.default_rng(10)
data = rng.random((3,4))
print("below is data:")
print(data)
res = np.corrcoef(data)
print("------------------------------------------------")
print("below is the res of np.corrcoef(data):")
print(res)

结果如下图

2. rowvar设置为false来改变默认计算规则来

rowvar设置为false后,row表示observation,column表示variable

import numpy as np 

rng = np.random.default_rng(10)
data = rng.random((3,4))
print("below is data:")
print(data)
res = np.corrcoef(data, rowvar=False)
print("------------------------------------------------")
print("below is the res of np.corrcoef(data):")
print(res)

结果如下图

3. np.corrcoef(data1, data2)

这个其实等效于将data1跟data2在第一个维度上结合后计算皮尔逊相关系数的结果

import numpy as np

a = np.array(([[0.77395605, 0.43887844, 0.85859792],
[0.69736803, 0.09417735, 0.97562235],
[0.7611397 , 0.78606431, 0.12811363]])) b = np.array(([[0.45038594, 0.37079802, 0.92676499],
[0.64386512, 0.82276161, 0.4434142 ],
[0.22723872, 0.55458479, 0.06381726]])) merged_array = np.concatenate((a,b), axis = 0) res1 = np.corrcoef(a)
res2 = np.corrcoef(a, b)
res3 = np.corrcoef(merged_array) print("The res of the np.corroef(a) is: \n {}".format(res1))
print("The res2 equal to res3 is {}".format(np.array_equal(res2, res3)))

结果如下图

Reference

  1. https://numpy.org/doc/stable/reference/generated/numpy.corrcoef.html

numpy中计算相关系数的np.corrcoef的更多相关文章

  1. Python数据分析--Numpy常用函数介绍(5)--Numpy中的相关性函数

    摘要:NumPy中包含大量的函数,这些函数的设计初衷是能更方便地使用,掌握解这些函数,可以提升自己的工作效率.这些函数包括数组元素的选取和多项式运算等.下面通过实例进行详细了解. 前述通过对某公司股票 ...

  2. 使用python解线性矩阵方程(numpy中的matrix类)

    这学期有一门运筹学,讲的两大块儿:线性优化和非线性优化问题.在非线性优化问题这里涉及到拉格朗日乘子法,经常要算一些非常变态的线性方程,于是我就想用python求解线性方程.查阅资料的过程中找到了一个极 ...

  3. numpy中的方差、协方差、相关系数

    一.np.var 数学上学过方差:$$ D(X)=\sum_{i\in [0,n)} ({x-\bar{x}})^2 $$ np.var()实际上是均方差,均方差的意义就是将方差进行了平均化,从而使得 ...

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

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

  5. Python数据分析--Numpy常用函数介绍(6)--Numpy中与股票成交量有关的计算

    成交量(volume)是投资中一个非常重要的变量,它是指在某一时段内具体的交易数,可以在分时图中绘制,包括日线图.周线图.月线图甚至是5分钟.30分钟.60分钟图中绘制. 股票市场成交量的变化反映了资 ...

  6. numpy中np.c_和np.r_

    np.r_:按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等,类似于pandas中的concat() np.c_:按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等,类似于pandas中的mer ...

  7. numpy中的np.round()取整的功能和注意

    numpy中的np.round()取整的功能和注意 功能 np.round() 是对浮点数取整的一个函数,一般的形式为 np.round(a, b),其中a为待取整的浮点数,b为保留的小数点的位数 注 ...

  8. Python3 计算相关系数

    # -*- coding: utf-8 -*- """ Created on Mon Jan 8 19:36:48 2018 @author: markli " ...

  9. day-14 回归中的相关系数和决定系数概念及Python实现

    衡量一个回归模型常用的两个参数:皮尔逊相关系数和R平方 一.皮尔逊相关系数 在统计学中,皮尔逊相关系数( Pearson correlation coefficient),又称皮尔逊积矩相关系数(Pe ...

  10. Numpy中Meshgrid函数介绍及2种应用场景

    近期在好几个地方都看到meshgrid的使用,虽然之前也注意到meshgrid的用法.但总觉得印象不深刻,不是太了解meshgrid的应用场景.所以,本文将进一步介绍Numpy中meshgrid的用法 ...

随机推荐

  1. pycharm eslint 关闭

    pycharm 关闭eslint 文件->设置->语言和框架->JavaScript->代码质量工具->ESLint

  2. Matplotlib.pyplot.plot 绘图

    Matplotlib.pyplot 创建图形.在图形中创建创建一个绘图区域.在绘图区域中你那个绘制一些线.在图形中添加标签之类 画二维平面图 x = np.arange(0, 10, 2) y1 = ...

  3. HDU - 7125 Master of Shuangpin

    D. Master of Shuangpin time limit per test 1 second memory limit per test 256 megabytes input standa ...

  4. 【数据库】时区及JDBC的时区设置

    JDBC连接时有个TimeZone配置,这玩意到底有用吗?我是使用Postgresql和Mysql两个数据库验证的.结果如下: 数据库 部署方式 版本 JDBC连接TimeZone参数 JDBC连接s ...

  5. 密码暴力破解工具——九头蛇(hydra)使用详解及实战

    转载出处:https://zhuanlan.zhihu.com/p/540998739 二.使用方法 语法:Hydra 参数 IP 服务 参数: -l login 小写,指定用户名进行破解 -L fi ...

  6. 记录一次ScrollViewer控件 经过大量文本数据卡顿的原因

    在 WPF 中,CanContentScroll 是 ScrollViewer 控件的一个附加属性,它控制滚动视图中的内容是否按项或像素来滚动. 当 CanContentScroll 设置为 fals ...

  7. springboot接入influxdb

    转载请注明出处: 1.添加maven依赖 <dependency> <groupId>org.springframework.boot</groupId> < ...

  8. kafka消费者那些事儿

    前言 消息的消费一般有两种模式,推模式和拉模式.推模式是服务端主动将消息推送给消费者,而拉模式是消费者主动向服务端发起请求来拉取消息.kakfa采用的是拉模式,这样可以很好的控制消费速率.那么kafk ...

  9. 翻车了,被读者找出 BUG

    大家好呀,我是小楼. 本文是上篇文章<使用增强版 singleflight 合并事件推送,效果炸裂!>的续集,没看过前文必须要先看完才能看本文,实在不想看,拉到文章末尾,给我点个赞再退出吧 ...

  10. Junit执行器Runner探索之旅

    单元测试是每个程序员必备的技能,而Runner是每个单元测试类必有属性.本文通过解读Junit源码,介绍junit中每个执行器的使用方法,让读者在单元测试时,可以灵活的使用Runner执行器. 一.背 ...