[英]Difference in between Covariance and Correlation Matrix
在Matlab中,我已经创建了一个矩阵A与大小(244x2014723)
并用尺寸的矩阵B (244x1)
我能够使用corr(A,B)
计算相关矩阵,该矩阵的大小为2014723x1
。 因此,矩阵A的每一列都与矩阵B相关,并在大小为2014723x1
的矩阵中给出一行值。
我的问题是,当我使用cov(A,B)
求协方差矩阵时,出现一个错误,说A和B的大小应相同。 为什么会出现此错误? 查找corr(A,B)
与cov(A,B)
什么不同?
见链接
在更多内容部分中,描述如何为cov(A,B)计算cov的方程式清楚说明了为什么它们需要具有相同的大小。 求和仅是一个枚举A,B元素的变量。
如果您阅读了文档,答案就很清楚了:
cov
:
如果A和B是观测矩阵,则cov(A,B)将A和B视为向量,并且等效于cov(A(:),B(:))。 A和B的大小必须相等。
corr(X,Y)返回一个p1-by-p2矩阵,其中包含nby-p1和nby-p2矩阵X和Y中每对列之间的成对相关系数。
corr(X,Y)与MATLAB®函数corrcoef(X,Y)之间的区别在于corrcoef(X,Y)返回两个列向量X和Y的相关系数矩阵。如果X和Y不是列向量,corrcoef(X,Y)将它们转换为列向量。
可以获取向量与矩阵每一列的协方差的一种方法是使用循环。 另一种方法(根据大小可能效率不高)是
C = cov([B,A])
然后查看第一行(或列)或C
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.