numpy中计算相关系数的np.corrcoef
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
numpy中计算相关系数的np.corrcoef的更多相关文章
- Python数据分析--Numpy常用函数介绍(5)--Numpy中的相关性函数
摘要:NumPy中包含大量的函数,这些函数的设计初衷是能更方便地使用,掌握解这些函数,可以提升自己的工作效率.这些函数包括数组元素的选取和多项式运算等.下面通过实例进行详细了解. 前述通过对某公司股票 ...
- 使用python解线性矩阵方程(numpy中的matrix类)
这学期有一门运筹学,讲的两大块儿:线性优化和非线性优化问题.在非线性优化问题这里涉及到拉格朗日乘子法,经常要算一些非常变态的线性方程,于是我就想用python求解线性方程.查阅资料的过程中找到了一个极 ...
- numpy中的方差、协方差、相关系数
一.np.var 数学上学过方差:$$ D(X)=\sum_{i\in [0,n)} ({x-\bar{x}})^2 $$ np.var()实际上是均方差,均方差的意义就是将方差进行了平均化,从而使得 ...
- np.corrcoef()方法计算数据皮尔逊积矩相关系数(Pearson's r)
上一篇通过公式自己写了一个计算两组数据的皮尔逊积矩相关系数(Pearson's r)的方法,但np已经提供了一个用于计算皮尔逊积矩相关系数(Pearson's r)的方法 np.corrcoef() ...
- Python数据分析--Numpy常用函数介绍(6)--Numpy中与股票成交量有关的计算
成交量(volume)是投资中一个非常重要的变量,它是指在某一时段内具体的交易数,可以在分时图中绘制,包括日线图.周线图.月线图甚至是5分钟.30分钟.60分钟图中绘制. 股票市场成交量的变化反映了资 ...
- numpy中np.c_和np.r_
np.r_:按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等,类似于pandas中的concat() np.c_:按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等,类似于pandas中的mer ...
- numpy中的np.round()取整的功能和注意
numpy中的np.round()取整的功能和注意 功能 np.round() 是对浮点数取整的一个函数,一般的形式为 np.round(a, b),其中a为待取整的浮点数,b为保留的小数点的位数 注 ...
- Python3 计算相关系数
# -*- coding: utf-8 -*- """ Created on Mon Jan 8 19:36:48 2018 @author: markli " ...
- day-14 回归中的相关系数和决定系数概念及Python实现
衡量一个回归模型常用的两个参数:皮尔逊相关系数和R平方 一.皮尔逊相关系数 在统计学中,皮尔逊相关系数( Pearson correlation coefficient),又称皮尔逊积矩相关系数(Pe ...
- Numpy中Meshgrid函数介绍及2种应用场景
近期在好几个地方都看到meshgrid的使用,虽然之前也注意到meshgrid的用法.但总觉得印象不深刻,不是太了解meshgrid的应用场景.所以,本文将进一步介绍Numpy中meshgrid的用法 ...
随机推荐
- pycharm eslint 关闭
pycharm 关闭eslint 文件->设置->语言和框架->JavaScript->代码质量工具->ESLint
- Matplotlib.pyplot.plot 绘图
Matplotlib.pyplot 创建图形.在图形中创建创建一个绘图区域.在绘图区域中你那个绘制一些线.在图形中添加标签之类 画二维平面图 x = np.arange(0, 10, 2) y1 = ...
- HDU - 7125 Master of Shuangpin
D. Master of Shuangpin time limit per test 1 second memory limit per test 256 megabytes input standa ...
- 【数据库】时区及JDBC的时区设置
JDBC连接时有个TimeZone配置,这玩意到底有用吗?我是使用Postgresql和Mysql两个数据库验证的.结果如下: 数据库 部署方式 版本 JDBC连接TimeZone参数 JDBC连接s ...
- 密码暴力破解工具——九头蛇(hydra)使用详解及实战
转载出处:https://zhuanlan.zhihu.com/p/540998739 二.使用方法 语法:Hydra 参数 IP 服务 参数: -l login 小写,指定用户名进行破解 -L fi ...
- 记录一次ScrollViewer控件 经过大量文本数据卡顿的原因
在 WPF 中,CanContentScroll 是 ScrollViewer 控件的一个附加属性,它控制滚动视图中的内容是否按项或像素来滚动. 当 CanContentScroll 设置为 fals ...
- springboot接入influxdb
转载请注明出处: 1.添加maven依赖 <dependency> <groupId>org.springframework.boot</groupId> < ...
- kafka消费者那些事儿
前言 消息的消费一般有两种模式,推模式和拉模式.推模式是服务端主动将消息推送给消费者,而拉模式是消费者主动向服务端发起请求来拉取消息.kakfa采用的是拉模式,这样可以很好的控制消费速率.那么kafk ...
- 翻车了,被读者找出 BUG
大家好呀,我是小楼. 本文是上篇文章<使用增强版 singleflight 合并事件推送,效果炸裂!>的续集,没看过前文必须要先看完才能看本文,实在不想看,拉到文章末尾,给我点个赞再退出吧 ...
- Junit执行器Runner探索之旅
单元测试是每个程序员必备的技能,而Runner是每个单元测试类必有属性.本文通过解读Junit源码,介绍junit中每个执行器的使用方法,让读者在单元测试时,可以灵活的使用Runner执行器. 一.背 ...