MATLAB 协方差 [cov] 和相关系数 [corrcoef] 说明 您所在的位置:网站首页 返回系数的意义 MATLAB 协方差 [cov] 和相关系数 [corrcoef] 说明

MATLAB 协方差 [cov] 和相关系数 [corrcoef] 说明

2024-06-29 14:56| 来源: 网络整理| 查看: 265

A,B为两个长度相同的向量

求协方差

S=cov(A,B);

b和c数值上是相等的。

求相关系数

R=corrcoef(A,B)

数值上,f和g是相同到。

相关系数存在许多种类,上述corrcoef 指 pearson correlation coefficient。

性质:向量乘常数,不改变Pearson 相关系数的大小,如 corrcoef(55*A, B) 和 corrcoef(A,B) 的相关系数大小一致。

扩展阅读 1

【copy from:  协方差与相关系数 - 三山音 - 博客园】

协方差

二维随机变量(X,Y),X与Y之间的协方差定义为:

Cov(X,Y)=E{[X-E(X)][Y-E(Y)]}

其中:E(X)为分量X的期望,E(Y)为分量Y的期望

协方差Cov(X,Y)是描述随机变量相互关联程度的一个特征数。从协方差的定义可以看出,它是X的偏差【X-E(X)】与Y的偏差【Y-E(Y)】的乘积的数学期望。由于偏差可正可负,因此协方差也可正可负。

l  当协方差Cov(X,Y)>0时,称X与Y正相关

l  当协方差Cov(X,Y)> 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)这个式子总是成立的, 所以我个人认为是样本数量(向量维数)少或者是这个函数的缺陷。


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有