​《本文同步发布于“脑之说”微信公众号,欢迎搜索关注~~》

在脑科学领域的研究中,进行相关分析必不可少,比如说,我们想知道计算出来的某个指标是否与临床数据或行为学数据之间存在正相关或负相关关系。计算相关系数,最常用的是Pearson相关系数和Spearman相关系数。此外,在研究中,偏相关分析也很常用,其在计算两个变量的相关系数的同时把第三个变量当成协变量来排除这个变量的影响。本文,笔者对相关系数和偏相关系数的原理进行简单论述,并重点说明如何用Matlab实现相关系数和偏相关系数的计算。

Pearson和Spearman相关系数

  1. Pearson相关系数。Pearson相关系数是一种反映两个变量线性相关程度的统计量,两个变量的线性相关程度用相关系数r表示,r的计算公式如下所示:

    相关系数r的值属于[-1,+1]之间。关于Pearson相关系数具体的说明,大家可以自行百度,这里笔者重点介绍如何用Matlab实现Pearson相关系数的计算。

例1:用Matlab计算变量A和B之间的Pearson相关系数r,以及A、B之间是否显著相关,

A=[41,63,83,71,94,62,60,42,55,67],

B=[10,16,26,29,20,9,8,13,18,14]。

在Matlab命令窗口中输入以下命令即可:

A=[41,63,83,71,94,62,60,42,55,67];

B=[10,16,26,29,20,9,8,13,18,14];

[r,p]=corr(A’,B’)

r =0.5997

p =0.0669

注意:这里计算相关系数r以及相应的p值用的是corr函数。实际上,corr函数既可以计算Pearson相关系数也可以计算Spearman相关系数,默认情况下计算的是Pearson相关系数,格式如下:

Pearson相关系数:[r,p]=corr(X,Y,‘type’,‘Pearson’)

Spearman相关系数:[r,p]=corr(X,Y,‘type’,‘Spearman’)

另外,需要注意的是,corr函数中两个变量X、Y必须是列向量,而不能是行向量,如例1中用[r,p]=corr(A’,B’)的命令,需要对A、B进行转置。

  1. Spearman相关系数。又称秩相关系数,是利用两变量的秩次大小作线性相关分析,具体的原理这里不展开说,需要进一步了解的可以自行百度。在例1中已经说到,Matlab中的corr函数同时可以计算Spearman相关系数。

例2:用Matlab计算变量A和B之间的Spearman相关系数r,以及A、B之间是否显著相关,

A=[41,63,83,71,94,62,60,42,55,67],

B=[10,16,26,29,20,9,8,13,18,14]。

在Matlab命令窗口中直接输入以下命令即可:

A=[41,63,83,71,94,62,60,42,55,67];

B=[10,16,26,29,20,9,8,13,18,14];

[r,p]=corr(A’,B’,‘type’,‘Spearman’)

r =0.6727

p =0.0394

结果显示A、B之间的相关系数r=0.6727,p=0.0394,存在显著的正相关。

偏相关分析

偏相关分析(Partial correlation analysis),简单地说,是在消除其他变量C影响的条件下,计算的A、B两变量之间的相关系数。Matlab中,计算偏相关系数所用的函数是partialcorr,使用方法如下:

[R,P] = partialcorr(X,Y,Z); %在控制变量Z的影响下,计算变量X、Y的偏相关系数。

例3:在消除变量C的影响下,用Matlab计算变量A和B之间的偏相关系数R。

A=[41,63,83,71,94,62,60,42,55,67],

B=[10,16,26,29,20,9,8,13,18,14];

C=[0.81,0.90,0.12,0.91,0.63,0.09,0.27,0.54,0.95,0.96]。

直接在Matlab命令窗口中输入如下命令即可:

A=[41,63,83,71,94,62,60,42,55,67];

B=[10,16,26,29,20,9,8,13,18,14];

C= [0.81,0.90,0.12,0.91,0.63,0.09,0.27,0.54,0.95,0.96];

[R,P] = partialcorr(A’,B’,C’)

R =0.6614

P =0.0524

结果表明,在控制变量C影响的条件下,计算得到A、B之间的相关系数R=0.6614,P=0.0524,A、B之间不存在显著相关。

总结

本文,笔者对如何用Matlab计算Pearson相关系数、Spearman相关系数和偏相关系数进行了详细论述,希望对大家的研究有所帮助。

注:解读不易,请多多转发支持,您的每一次转发是对我们最好的支持!本文原文及附加材料,请添加赵老师微信索要(微信号:15560177218)

如何用Matlab计算相关系数和偏相关系数相关推荐

  1. python怎么计算相关系数、偏相关系数?

    首先看下相关系数.偏相关系数的计算公式 Xi=[1.1, 1.9, 3] Yi=[5.0, 10.4, 14.6] E(X) = (1.1+1.9+3)/3=2 E(Y) = (5.0+10.4+14 ...

  2. R语言中用于计算相关系数和偏相关系数的包

    文章目录 偏相关系数的计算 corpcor包 ggm包 psych包 偏相关系数的计算 corpcor包 例子: M=cbind(y,x1,x2) xcor=cor(M)#相关系数矩阵 xpcor=c ...

  3. 如何用matlab计算不确定度,基于MATLAB的不确定度合成

    当测量结果是一个或多个直接测量量的函数时,即有y=f(x1,x2,-,xn)的函数关系,直接测量量的不确定度u(xi)(i=1,2,-,n)以一定规律传递给测量结果,一般用下述公式进行不确定度合成u2 ...

  4. matlab波形相似系数,如何用matlab计算波形相似系数

    . 低通采样定理实验 1.1 实验目的 1.了解数字信号处理系统的一般构成: 2.掌握奈奎斯特抽样定理. 1.2 实验仪器 1.YBLD智能综合信号源测试仪 1台 2.双踪示波器 1台 3.MCOM- ...

  5. 代入消元法 matlab,求助 如何用matlab计算期权价格

    期权定价理论是现代金融学中最为重要的理论之一,也是衍生金融工具定价中最复杂的.本文给出了欧式期权定价过程的一个简单推导,并利用Matlab对定价公式给出了数值算例及比较静态分析,以使读者能更直观地理解 ...

  6. 如何用matlab计算比例尺,宝黛爱情仍属于狭义的才子佳人小说体系。 ( )

    [单选题]制作一般清汤,汤料和水的比例为: [阅读理解(选择)/完型填空] [多选题]关于猪蹄质量鉴别正确的是( ). [单选题]认为人的工作的主要动机是获得经济报酬的人性假设是 ( ) [判断题]人 ...

  7. matlab 怎么与运算,求助如何用MATLAB计算VAR和Expected shortfall

    不知道这个能不能满足 function calcvar %calcvar        terminal interface for VaR calculation. % %        You c ...

  8. matlab计算矩阵的相关系数矩阵,计算二维矩阵的相关系数

    很久没有用Matlab工具了,最近由于需要数据处理所以又重拾起 主要记录如何用Matlab计算矩阵的相关系数方法 矩阵形式:4096*3575 目标:得到该矩阵每一行与其余行数据之间的相关系数矩阵(4 ...

  9. 相关系数excel_跟着思想学外汇-如何用Excel计算货币相关性

    第十篇 大四 第六章 货币相关性 第六节 如何用Excel计算货币相关性 正如在之前课程中读到的,货币对的相关性会随着时间的推移而变化.因此,随时了解当前的系数变得更加重要. 幸运的是,货币相关性系数 ...

  10. 如何用Matlab建立信用风险模型,基于Matlab计算的KMV模型在商业银行信用风险管理中的实践应用.pdf...

    科技论坛 2014.6 基于Matlab计算的KMV模型在商业银行信用风险管理中的 应用 李 园 (天津大学管理与经济学部,天津,300072) 摘要:社会经济的不断发展,金融行业也处于不断发展之中, ...

最新文章

  1. vue实例没有挂载到html上,vue 源码学习 - 实例挂载
  2. 英语音标 语言、语音、音素及音标
  3. dart系列之:dart代码规范实践指南
  4. 看美国如何实现农业大数据的建设
  5. 7-201 列出连通集 (25 分)
  6. Android 怎么退出整个应用程序?[转]
  7. Java Interview Questions
  8. fckeditor 图片上传 java_ckeditor用fckeditor的文件管理器实现图片上传
  9. [读书笔记]流畅的Python(Fluent Python)
  10. 如何驱动直流电机H桥驱动笔记
  11. 搜索引擎的博客提交入口
  12. destoon运行流程
  13. 【PTA】PAT (Advanced Level) Practice 1011-1014
  14. 你是部门经理,老板对你说公司要裁员,你该怎么办?
  15. es 启动elasticsearch.bat发生闪退
  16. redis常用的五大数据类型和redis新增类型以及对应的命令
  17. bugku crypto-python_jail
  18. 【C51】基于51单片机的简易频率计(附代码、无需外设、小白简单易上手)
  19. 【PySCF学习1】-分子结构之定义分子
  20. 蒟蒻名曰Starria-博客两周年纪念

热门文章

  1. 燕山大学高数AⅠ复习资料
  2. Linux查看硬盘序列号
  3. python函数拟合
  4. Jade模板引擎教程
  5. 秒杀项目(1)项目环境搭建
  6. 电源篇 -- 升压电路 Boost
  7. ubuntu下安装CAJ阅读器
  8. Linux程序设计 清空标准输入缓冲区
  9. JDK15安装与环境变量配置
  10. win10pe命令打开计算机,Win10是怎么进入安全模式