ZKX's LAB

matlab 求自协方差函数 在matlab中如何求两个列矩阵的协方差?用cov函数可以求得两个列矩阵的协方差矩阵,这个矩阵的对角线就是相关系数,那么如何单独求出两个列矩阵的协方差呢?

2021-04-04知识4

在matlab中如何求两个列矩阵的协方差? 函数cov格式cov(X)求向量抄X的协方差袭cov(A)求矩bai阵A的协方差矩阵,du该协方差矩阵的对zhi角线元素是A的各列的方差,即:var(A)=diag(cov(A))。daocov(X,Y)X,Y为等长列向量,等同于cov([XY])。

在matlab中如何求两个列矩阵的协方差? 函数 cov格式 cov(X)%求向量X的协方差cov(A)%求矩阵A的协方差矩阵,该协方差矩阵的对角线元素是A的各列的方差,即:var(A)=diag(cov(A))。cov(X,Y)%X,Y为等长列向量,等同于cov([X Y])。

matlab 中的cov等的统计函数的用法;假设X={xij}是一个p*n的矩阵,即有p个变元,n次观察,如何求协方差矩 >;>;a=[1 2 3;2 5 6]a=1 2 32 5 6b=mean(a)%mean是按列求平均值,从b中的值可以看出b=1.5000 3.5000 4.5000c=mean(a')%所以要按行求平均值,直接转置求取,最后对c再求转置即可得到p维列向量c=2.0000 4.3333M=rand(4,3)M=0.9501 0.8913 0.82140.2311 0.7621 0.44470.6068 0.4565 0.61540.4860 0.0185 0.7919m=cov(M)m=0.0892 0.0330 0.04050.0330 0.1505-0.01860.0405-0.0186 0.0305%可以看出最后得到的协方差是3*3,由此知cov也是按列计算的,m对角线的元素是每列的方差,其余元素是列与列之间的协方差n=cov(M')n=0.0042-0.0061-0.0006-0.01100.0061 0.0714-0.0214-0.07140.0006-0.0214 0.0080 0.03260.0110-0.0714 0.0326 0.1517%转置后计算协方差,n为4*4,那么对角线元素就是行的方差,其余元素就是行与行之间的协方差。关于cov计算的结果和手算的结果不同,这里的原因是:matlab在计算相关矩阵时,把每一列的数作为一个随机变量的样本,每一行作为一个这几个随机变量的联合样本,即第i个随机变量取第k行的样本值时,第j个随机变量也取第k行的样本值。利用这个性质,我们e799bee5baa6e997aee7ad94e78988e69d8331333264626631就可以用。

#matlab 求自协方差函数

随机阅读

qrcode
访问手机版