MATLAB中的corrcoef函数求两个向量的相关系数。

2023-11-04


想用MATLAB中的corrcoef函数求两个向量的相关系数。
 
比如A=[1 2 3];B=[5 3 7]; r= corrcoef(A,B)可以求出相关系数是0.5.为什么两个向量的元素都要是3个以上才行?而只有两个元素的向量如A=[1 2];B=[5 3];不管怎么随机的取,相关系数都是1或-1啊?只含两个元素的向量,都一定相关吗?
 

这是求相关度的结果,对于一般的矩阵X,执行A=corrcoef(X)后,A中每个值的所在行a和列b,反应的是原矩阵X中相应的第a个列向量和第b个列向量的相似程度(即相关系数)。计算公式是:C(1,2)/SQRT(C(1,1)*C(2,2)),其中C表示矩阵[f,g]的协方差矩阵,假设f和g都是列向量(这两个序列的长度必须一样才能参与运算),则得到的(我们感兴趣的部分)是一个数。以默认的A=corrcoef(f,g)为例,输出A是一个二维矩阵(对角元恒为1),我们感兴趣的f和g的相关系数就存放在A(1,2)=A(2,1)上,其值在[-1,1]之间,1表示最大的正相关,-1表示绝对值最大的负相关

>> A=[1 2 3];B=[5 3 7]; r= corrcoef(A,B)

r =

    1.0000    0.5000

    0.5000    1.0000

>> A=[1 2];B=[5 3];

   r= corrcoef(A,B)

r =

    1.0000   -1.0000

   -1.0000    1.0000%%-1是算出来的,不是说二维向量就一定相关,根据图中r和协方差矩阵的关系

cov(A,B)

ans =

    0.5000   -1.0000

   -1.0000    2.0000%%%A和B的协方差矩阵

那么R(1,2)=C(1,2)/(sqrt(C(1,1)*C(2,2)))=-1,sqrt为开方的意思。

向左转 | 向右转

追问
非常感谢你的回答,真的是太详细了,我都抄在本子上了呵呵。但还是有一点不明白,
“-1是算出来的,不是说二维向量就一定相关,”什么意思?为什么任何两个二维向量计算出来的相关系数都是1或者-1?你不是说“1表示最大的正相关,-1表示绝对值最大的负相关”吗?那么任何两个二维的向量都具有最大的正(负)相关性吗?相关系数为1,也就是相关的。我不是学数学的,是做课题的时候发现这个问题不明白。
回答
>> A=[1 0];B=[0 1];%%二维向量,不相关
   cov(A,B)
ans =
    0.5000   -0.5000
   -0.5000    0.5000
A=[1 2];B=[5 10];%%二维向量,相关
   cov(A,B)
ans =
    0.5000    2.5000
    2.5000   12.5000
  正相关是指两列变量变动方向相同,一列变量由大到小或由小到大变化时,另一列变量亦由大到小或由小到大变化。
  负相关是指两列变量变动方向相反,一列变量由大到小或由小到大变化时,另一列变量反而由小到大或由大到小变化。
  matlab 函数corrcoef也是根据上面的概念计算的,关于二维向量计算总得到-1或者1的问题,我仔细看了下,上面的测试两组数据,可以看出协方差矩阵中sqrt(C(1,1)*C(2,2))=C(1,2)or-C(1,2)。也就是说不管你怎么换数据sqrt(C(1,1)*C(2,2))=C(1,2)or-C(1,2)这个式子总是成立的,所以我个人认为是样本数量(向量维数)少或者是这个函数的缺陷。
提问者评价
感谢。我大概明白了。如果向量只有两维,则只存在相关或不相关。没有定义相关的程度。除非样本数量多些
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MATLAB中的corrcoef函数求两个向量的相关系数。 的相关文章

  • 初识Java

    Java之父 詹姆斯 高斯林 Write once Run anywhere jdk jre jvm的关系 jdk Java开发工具 jre Java运行环境 jvm Java虚拟机 xxx java程序的运行 首先javac xxx ja
  • 【Protobuf】pb中类型字段不匹配问题

    文章目录 背景 结论 原始数据 测试1 测试2 背景 客户端更新proto 新增message字段 探索新增字段的数据类型和标签对服务端反序列化数据的影响 结论 新增字段数据类型与服务端相同标签数据类型 不同 无法获取数据 但是不报错 相同
  • Request应用

    request getRequestDispatcher url 的url可以是相对路径也可以是绝对路径 getRequestDispatcher分成两种 可以用request调用 也可以用getServletContext 调用 不同的是
  • Apache Tomcat 官网下载(保姆级教程)

    目录 前言 一 环境说明 二 官网下载 1 进入官网 2 选择下载版本 3 进入版本页面 4 选择下载 总结 前言 Apache Tomcat 它是目前使用最广泛的Java应用服务器之一 我们在下载的时候千万不要去第三方网站 可以直接官网下
  • 前端下载二进制流pdf文件,下载成功,打开空白问题解决

    做pdf文件下载的时候 后端返回了二进制数据流 前端在发起请求时需要设置responseType arraybuffer 或者blob类型才可以 具体操作可以看我之前的文章 传送门 一开始对接的时候下载打开都是正常的 过后突然就不行了 能下
  • MySQL-----事务管理

    文章目录 前言 一 什么是事务 二 为什么会出现事务 三 事物的版本支持 四 事物的提交方式 五 事务常见的操作方式 六 事务隔离级别 如何理解隔离性1 隔离级别 查看与设置隔离性 读未提交 Read Uncommitted 读提交 Rea
  • SpringMVC工作原理

    文章搬运自 https www cnblogs com xiaoxi p 6164383 html SpringMVC工作原理 SpringMVC的工作原理图 SpringMVC流程 1 用户发送请求至前端控制器DispatcherServ
  • Android 13 - binder阅读(5)- 使用ServiceManager注册服务2

    上一篇笔记我们看到了binder transaction 这个方法很长 这一篇我们将把这个方法拆分开来看binder transaction做了什么 从而学习binder是如何跨进程通信的 1 binder transaction stat
  • ajax中load方法,jQuery中ajax的load()方法用法实例

    本文实例讲述了jQuery中ajax的load 方法用法 分享给大家供大家参考 具体分析如下 此函数jQuery中简单而功能强大的ajax方法 它可以从服务器加载内容 然后写入匹配元素 语法结构 selector load URL data
  • 将sql service数据库中的数据迁移到clickhourse中

    首先我们要根据sql server数据库的表在clickhourse中对应的建立表 CREATE TABLE IF NOT EXISTS default PosSalSheet SheetID String PosType Int8 Sta
  • 操作系统 3.2 进程概念

    单选题 共10题 下面关于进程的叙述 最不符合操作系统对进程的理解 A 进程是多程序环境中的完整的程序 B 进程可以由程序 数据和进程控制块描述 C 进程和程序是多对多的关系 D 进程是程序在一个数据集合上运行的过程 它是系统进行资源分配和
  • STM32 主从蓝牙模块配置

    前言 最近在调试小车的时候 突然想要用两个蓝牙进行单片机和电脑的交互 之前一直用的都是从机的蓝牙 这里因为需要双机通信 所以也就顺便查询了一些资料 了解一下主从蓝牙模块的使用 以及双机通信的一些使用 话不多说 开始 AT指令 蓝牙模块需要通
  • react强制组件刷新_如何强制刷新React子组件:简单方法

    react强制组件刷新 Note As of React 16 componentWillReceiveProps is deprecated meaning if you are using that version or higher
  • JS组件Bootstrap实现弹出框和提示框效果代码

    这篇文章主要介绍了JS组件Bootstrap实现弹出框和提示框效果代码 对弹出框和提示框感兴趣的小伙伴们可以参考一下 前言 对于Web开发人员 弹出框和提示框的使用肯定不会陌生 比如常见的表格新增和编辑功能 一般常见的主要有两种处理方式 行
  • Python研发工程师必备工具合集

    Python研发工程师必备工具合集 1 必备工具 2 常用网站 3 学习路线 4 必备技能 5 书籍推荐 6 进阶学习 一 必备工具 1 Sublime Text 2 Notepad 3 Visual Studio Code 4 Atom
  • 宝塔环境,后台上传图片不成功问题

    主要是宝塔开启了post攻击拦截导致的 关闭之后就可以了 或者选择性关闭规则 我的项目追踪请求返回内容 div 宝塔免费WAF提醒您 from data 请求异常 拒绝访问 如有误报请点击误报 div
  • 第十章 数据库恢复技术

    第十章 数据库恢复技术 10 1 事务的基本概念 事务 事务是用户定义的一个数据库操作序列 这些操作要么全做 要么全不做 是一个不可分割的工作单位 例 事务的特性 ACID特性 ACID properties 原子性 Atomicity 事
  • Jetbrains相关IDE下载历史版本

    进入 https www jetbrains com zh cn phpstorm download other html 点击相应的IDE 在连接最后添加 字符串 download other html 回车 跳转到当前IDE历史版本下载
  • python3.6 安装torch、torchvision

    python3 6安装torch torchvision 1 进入torch的官网的下载页面 选择一下参数信息 2 下载 whl 文件到本地 直接复制那个地址 3 把刚刚下载的两个文件 放到安装python安装文件夹里面去 比如 我是复制到
  • C语言:详细讲解基于tcp和udp的两种本地通信方式

    udp本地通信注意 客户端这边必须要绑定自己的客户端信息不然服务器就无法给客户端发送消息 原因是网络编程的时候客户端信息操作系统会自动分配 而本地通信并不会 本地通信的时候 服务器的那个套接字文件是用来标识服务器进程的 客户端得用两个套接字

随机推荐

  • 集合的练习题

    练习1 随机点名器 需求 班级里有N个学生 实现随机点名器 public class W1随机点名器 public static void main String args ArrayList
  • OneNav 加强版支持多用户

    修改说明 支持多用户注册使用 Web自助申请 自助修改用户名和密码 可关闭注册 支持注册时记录用户注册IP和时间 支持登陆保护机制 多次登陆失败后会被限制 防止被爆破 支持隐藏登陆注册接口 防止被爆破 支持在非根目录运行 支持js css等
  • 以衍复为例,聊聊当下的沪深300指数增强

    最基础的问题 什么是沪深300指增 沪深300指数增强策略 对标沪深300指数 它利用量化投资的方式进行主动选股 很多管理人已经是全市场选股 在获取 指数 收益的同时 获取超越市场的 收益 能否长期获得稳定的 收益是衡量管理人水平的重要评判
  • [Pytorch系列-64]:生成对抗网络GAN - 图像生成开源项目pytorch-CycleGAN-and-pix2pix : 有监督图像生成pix2pix的基本原理

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 122044727 目录 第1章 关键参
  • Linux/Ubuntu 单机安装配置 zookeeper

    文章目录 下载 配置zookeeper 运行zookeeper 添加zookeeper命令到环境变量 下载 官网下载页面 https archive apache org dist zookeeper 清华源下载地址 https mirro
  • AI智能语音客服机器人方案介绍/优点/核心

    介绍 智能语音电话系统 在语音电话交流中自动理解客户意向 并做出最恰当的回应 智能代替人工的基本原理如下 即在呼入 呼出过程中 利用ASR NLP技术引导用户说出需求 通过真人录制的声音模仿与客户进行多轮对话 将语音转化为文字 根据识别的文
  • 查看数据库数据文件的总大小

    select round sum bytes 1024 1024 1024 0 total space GB from dba data files round 是oracle数据库四舍五入函数 来自 ITPUB博客 链接 http blo
  • 关于js逆向你必须知道的20个知识点

    1 什么是js逆向 js逆向是指通过分析JavaScript代码来了解网页或应用的工作原理 发现关键信息或漏洞的过程 2 为什么要学js逆向 学习js逆向可以帮助我们加深对JavaScript语言的理解 发现网站或应用的漏洞 也可以用于一些
  • 【H5】前端存储 -- cookie、sessionStorage、localStorage

    前端存储分为cookie和webStorage webStorage又分为sessionStorage 会话存储 和localStorage 本地存储 cookie 特点 cookie产生于服务器端 保存在客户端 同一服务器下的cookie
  • 知识图谱的应用领域

    1 3 知识图谱的价值 知识图谱最早的应用是提升搜索引擎的能力 随后 知识图谱在辅助智能问答 自然语言理解 大数据分析 推荐计算 物联网设备互联 可解释性人工智能等多个方面展现出丰富的应用价值 1 辅助搜索 互联网的终极形态是万物的互联 而
  • [VS Code]-代码高亮设置

    代码高亮设置 在vscode 中对 选中的代码片段高亮颜色设置 和 所在当前行高亮提示设置 workbench colorCustomizations 2 写配置代码 workbench colorCustomizations editor
  • ThreadLocal从变量副本的角度解决多线程并发安全问题

    ThreadLocal从变量副本的角度解决多线程并发安全问题 之前我们讲的高并发场景下的线程安全问题 可以使用Synchronized同步关键字 Lock手动加锁的方式去解决 什么轻量级锁 偏向锁 重量级锁 可重入锁等等 实际上本质都是控制
  • Elasticsearch的long类型精准匹配异常?

    ES version 7 5 2 现象 通过其他字段可以查询出elasticsearch的doc数据 但通过某个long类型的字段精准匹配时不能hit GET index name search query term field value
  • 零基础上手定制谷歌浏览器插件

    文章目录 谷歌插件 核心内容简述 谷歌插件小案例 安装自定义谷歌插件 结语 谷歌插件 说起谷歌插件 相信大家应该都不陌生 比如下图就是我所安装的一些谷歌插件 而今天我所要做的不是给大家介绍有哪些好用的谷歌插件 而是给大家介绍一种快速上手自己
  • 懒汉模式的单例中对于指令重排序的规避方案

    1 双重检查的单例模式中可能会出现第一个非空判断为true 可是instance并没有初始化的情况 这种情况如果线程1去访问instance则会报异常 使用volatile关键字去声明instance可以规避2 3步的指令重排序 进而规避这
  • CMake入门指南

    CMake是一个比make更高级的编译配置工具 它可以根据不同平台 不同的编译器 生成相应的Makefile或者vcproj项目 通过编写CMakeLists txt 可以控制生成的Makefile 从而控制编译过程 CMake自动生成的M
  • python做excel自动化-Python如何控制Excel实现自动化办公

    Python如何控制Excel实现自动化办公 发布时间 2020 04 07 09 51 44 来源 亿速云 阅读 132 作者 小新 这篇文章主要给大家讲解的是Python如何控制Excel实现自动化办公 主要用到了xlsxwriter库
  • python画双坐标图_Python绘图分组双坐标柱状图(全网唯一,发布源代码),python,画,公布...

    目前在网络上没有找到现成的办法解决双坐标分组柱状图 为了画这个图 花了3小时 实现效果 源代码如下 import matplotlib pyplot as plt a 4 5 0 b 3 2 0 c 4 3 0 d 3 2 0 a 2 0
  • Hololens2项目基础开发

    目录 一 前言 二 VS2019负载安装 三 Hololens2项目环境配置 四 项目具体功能实现 五 打包部署真机测试 一 前言 Hololens2项目基础开发包含 单 双 手近距离控制物体移动旋转 双手近距离控制物体的缩放 语音功能 控
  • MATLAB中的corrcoef函数求两个向量的相关系数。

    想用MATLAB中的corrcoef函数求两个向量的相关系数 比如A 1 2 3 B 5 3 7 r corrcoef A B 可以求出相关系数是0 5 为什么两个向量的元素都要是3个以上才行 而只有两个元素的向量如A 1 2 B 5 3