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表示variablecolumn表示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表示observationcolumn表示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. webGPU orillusion(一)

    关于架构的理解与认识   Orillusion 核心借鉴了 ECS 结构,遵循 组合优于继承 的开发设计原则,实现了自己的组件系统.我们将传统复杂的逻辑划分为独立的.可重复利用的部分,每个部分可以单独 ...

  2. Anaconda入门使用指南(一)

    python 是目前最流程的编程语言之一,但对于很多初学者而言,python 的包.环境以及版本的管理却是一个令人头疼的问题,特别是对于使用 Windows 的童鞋.为了解决这些问题,有不少发行版的 ...

  3. Python获取token数据的几种方式

    import requestsfrom urllib import requestimport re# 一.从响应头中获取token# 登录url = 'http://xxx.nhf.cn/api/b ...

  4. 五年磨一剑——Sealos 云操作系统正式发布!

    这是个宏伟的计划 这是一个宏伟的计划,漫长且有趣. 2018 年的某个夜晚,夜深人静,我挥舞键盘,敲下了 Sealos 的第一行代码.当时仓库命名为 "kubeinit",后来觉得 ...

  5. CKS 考试题整理 (01)-NetworkPolicy

    Task 创建一个名为 pod-restriction 的 NetworkPolicy 来限制对在 namespace dev-team 中运行的 Pod products-service 的访问. ...

  6. 使用Git进行版本控制和协作:代码共享、协作和版本管理

    目录 引言 Git 是一款开源的分布式版本控制系统,它已经成为了现代软件开发中必不可少的工具之一.在这篇文章中,我们将介绍如何使用 Git 进行版本控制和协作,以实现代码共享.协作和版本管理.Git ...

  7. Taurus .Net Core 微服务开源框架:Admin 插件【3】 - 指标统计管理

    前言: 继上篇:Taurus .Net Core 微服务开源框架:Admin 插件[2] - 系统环境信息管理 本篇继续介绍下一个内容: 1.系统指标节点:Metric - API 界面 界面图如下: ...

  8. 自然语言处理 Paddle NLP - 任务式对话系统-理论

    什么是任务型对话: 任务型:用于帮助用户完成某领域的特定任务,例如订餐.查天气.订票等 闲聊型:也称作开放域对话系统,目标是让用户持续的参与到交互过程,提供情感陪伴 问答型:提供知识满足,具体类型比较 ...

  9. 如何将PCM格式的原始音频采样数据编码为MP3格式或AAC格式的音频文件?

    一.打开和关闭输入文件和输出文件以及判断输入文件是否读取完毕 //io_data.cpp static FILE* input_file= nullptr; static FILE* output_f ...

  10. JMH – Java基准测试

    官方资源 官方Github样例 应用场景 对要使用的数据结构不确定,不知道谁的性能更好 对历史方法代码重构,要评判改造之后的性能提升多少 (我要做的场景) 想准确地知道某个方法需要执行多长时间,以及执 ...