MATLAB如何使用corrcoef函数计算样本数据的相关系数

2020年12月25日20:37:22MATLAB如何使用corrcoef函数计算样本数据的相关系数已关闭评论

MATLAB如何使用corrcoef函数计算样本数据的相关系数

【语法说明】

R=corrcoef(X):如果X为向量,函数返回1;如果X为m×n 矩阵,则以每行为观测值,每列为一个随机变量计算相关系数,返回一个n×n对称矩阵。假设协方差矩阵为C,相关系数矩阵为R,则相关系数可由协方差算得:

MATLAB如何使用corrcoef函数计算样本数据的相关系数

R=corrcoef(X,Y):相当于R=corrcoef([x(:) y(:)])。X和Y分别作为一个随机变量,函数返回一个2×2对称矩阵。

【功能介绍】求样本数据的相关系数。

【实例】同时存在3个随机变量,经过10次观测得到了一份数据,计算3个随机变量的相关系数。

>> a=[8,9,1,9,6,1,3,5,10,10];

>> b=[2,10,10,5,8,1,4,9,8,10];

>> c=[11,4.5,8.5,13.5,10,8,8.5,6.5,12,7];

>> corrcoef([a',b',c'])  % 样本的相关系数矩阵

ans =

1.0000 0.2878 0.2260

0.2878 1.0000 -0.4014

0.2260 -0.4014 1.0000

>> c=cov([a',b',c'])  % 利用协方差矩阵求相关系数

c =

12.6222 3.5111 2.1778

3.5111 11.7889 -3.7389

2.1778 -3.7389 7.3583

>> d1=repmat(diag(c),1,3)

d1 =

12.6222 12.6222 12.6222

11.7889 11.7889 11.7889

7.3583 7.3583 7.3583

>> d2=repmat(diag(c)',3,1)

d2 =

12.6222 11.7889 7.3583

12.6222 11.7889 7.3583

12.6222 11.7889 7.3583

>> cr=c./sqrt(d1.*d2)

cr =

1.0000 0.2878 0.2260

0.2878 1.0000 -0.4014

0.2260 -0.4014 1.0000

【实例讲解】相关系数的绝对值越大,表示随机变量之间的关联越强。

  • 版权声明:本篇文章(包括图片)来自网络,由程序自动采集,著作权(版权)归原作者所有,如有侵权联系我们删除,联系方式(QQ:452038415)。