在Matlab中计算两个向量的协方差

6
我正在尝试在Matlab中计算两个向量之间的协方差:
x = [1:10]
y = [21:30]
cov(x,y)

这会返回协方差和方差的矩阵。我只需要一个数字:两个向量之间的协方差。在matlab中如何得到它?

在Matlab中,可以使用cov函数来计算协方差矩阵。如果你只需要两个向量之间的协方差,则可以通过将这两个向量作为输入并使用索引来提取所需的值来获得它。

2个回答

7

如果你只有两个一维向量,你要找的数字就是cov输出的(1,2)元素。根据定义,协方差矩阵在对角线上包含方差,在非对角线上包含协方差值。


好的,我想答案就是每次需要对那个东西进行子集处理。谢谢!--alex - Alex
@Ansari 当考虑到两个矩阵时,是否也适用相同的方法? - mad
有人能确认每次都进行子集操作是否真的必要吗? - user1205901 - Слава Україні

0

我猜测x是随机变量的一个实现,y也是。那么cov(x',y')将给出协方差矩阵,其中对角线条目是xy的方差,而非对角线元素是它们的协方差。请注意,cov(x',y')是对称矩阵。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接