精华内容
下载资源
问答
  • matlab 协方差矩阵

    千次阅读 2018-05-29 15:56:28
    参考自文章:http://blog.163.com/yuyang_tech/blog/static/216050083201382610424490/cov(X,Y) 求矩阵X与Y的协方差矩阵。若X大小为M*N,Y为K*P,则X,Y的大小必须满足M*N=K*P,即X,Y的元素个数相同。此时,cov(X,...

    参考自文章:

    http://blog.163.com/yuyang_tech/blog/static/216050083201382610424490/


    cov(X,Y) 
    求矩阵X与Y的协方差矩阵。
    若X大小为M*N,Y为K*P,则X,Y的大小必须满足M*N=K*P,即X,Y的元素个数相同。
    此时,cov(X,Y) 等于cov([X(:) Y(:)])和cov(X(:),Y(:)),即计算两个向量的协方差矩阵,得到的结果为2*2矩阵。
    [S(X(:)) C(X(:),Y(:)); 
    C(Y(:),X(:) S(Y(:));]




    记录一下matlab中协方差矩阵的算法实际计算方法,一定要注意信号被降维了

    展开全文
  •  Matlab协方差矩阵的计算原理
    展开全文
  • end end c = 10.3333 -4.1667 3.0000 -4.1667 2.3333 -1.5000 3.0000 -1.5000 1.0000 c为求得的协方差矩阵,在matlab以矩阵a的每一列为变量,对应的每一行为样本。这样在矩阵a中就有3个列变量分别为a(:,1), a(:,2),...

    a=[-1,1,2;-2,3,1;4,0,9]

    for i=1:size(a,2)

    for j=1:size(a,2)

    c(i,j)=sum((a(:,i)-mean(a(:,i))).*(a(:,j)-mean(a(:,j))))/(size(a,1)-1);

    end

    end

    c =

    10.3333   -4.1667    3.0000

    -4.1667    2.3333   -1.5000

    3.0000   -1.5000    1.0000

    69c5a8ac3fa60e0848d784a6dd461da6.png

    c为求得的协方差矩阵,在matlab以矩阵a的每一列为变量,对应的每一行为样本。这样在矩阵a中就有3个列变量分别为a(:,1), a(:,2), a(:,3)。

    在协方差矩阵c中,每一个元素c(i,j)为对第i列与第j列的协方差,例如c(1,2) = -4.1667为第一列与第二列的协方差。

    拿c(1,2)的求解过程来说

    c(1,2)=sum((a(:,1)-mean(a(:,1))).*(a(:,2)-mean(a(:,2))))/(size(a,1)-1);

    1. a(:,1)-mean(a(:,1)),第一列的元素减去该列的均值得到

    -1.3333

    -2.3333

    3.6667

    2,  a(:,2)-mean(a(:,2)),第二列的元素减去该列的均值得到

    -0.3333

    1.6667

    -1.3333

    3, 再将第一步与第二部的结果相乘

    -1.3333        -0.3333           0.4444

    -2.3333  .*     1.6667  =     -3.8889

    3.6667         -1.3333          -4.8889

    4, 再将结果求和/size(a,1)-1 得 -4.1667,该值即为c(1,2)的值。

    再细看一下是不是与协方差公式:Cov(X,Y) = E{ [ (X-E(X) ] [ (Y-E(Y) ] }过程基本一致呢,只是在第4步的时候matlab做了稍微的调整,自由度为n-1,减少了一行的样本值个数。

    >> a=[-1,1,2;-2,3,1;4,0,9]

    a =

    -1     1     2

    -2     3     1

    4     0     9

    >> cov(a)

    ans =

    10.3333   -4.1667   14.0000

    -4.1667    2.3333   -5.5000

    14.0000   -5.5000   19.0000

    >> dim1=a(:,1)

    dim1 =

    -1

    -2

    4

    >> dim2=a(:,2)

    dim2 =

    1

    3

    0

    >> dim3=a(:,3)

    dim3 =

    2

    1

    9

    >> dim1-mean(dim1)

    ans =

    -1.3333

    -2.3333

    3.6667

    >> dim2-mean(dim2)

    ans =

    -0.3333

    1.6667

    -1.3333

    >> m=dim1-mean(dim1)

    m =

    -1.3333

    -2.3333

    3.6667

    >> m=dim2-mean(dim2)

    m =

    -0.3333

    1.6667

    -1.3333

    >> m=dim1-mean(dim1)

    m =

    -1.3333

    -2.3333

    3.6667

    >> n=dim2-mean(dim2)

    n =

    -0.3333

    1.6667

    -1.3333

    >> m.*n

    ans =

    0.4444

    -3.8889

    -4.8889

    >> size(a,1)

    ans =

    3

    >> sum(m.*n)

    ans =

    -8.3333

    >> ans/2

    ans =

    -4.1667

    大盘预测

    国富论

    posted on 2015-08-26 19:06 华梦行 阅读(175) 评论(0)  编辑  收藏

    展开全文
  • end end c = 10.3333 -4.1667 3.0000 -4.1667 2.3333 -1.5000 3.0000 -1.5000 1.0000 c为求得的协方差矩阵,在matlab以矩阵a的每一列为变量,对应的每一行为样本。这样在矩阵a中就有3个列变量分别为a(:,1), a(:,2),...

    a=[-1,1,2;-2,3,1;4,0,9]

    for i=1:size(a,2)

    for j=1:size(a,2)

    c(i,j)=sum((a(:,i)-mean(a(:,i))).*(a(:,j)-mean(a(:,j))))/(size(a,1)-1);

    end

    end

    c =

    10.3333   -4.1667    3.0000

    -4.1667    2.3333   -1.5000

    3.0000   -1.5000    1.0000

    69c5a8ac3fa60e0848d784a6dd461da6.png

    c为求得的协方差矩阵,在matlab以矩阵a的每一列为变量,对应的每一行为样本。这样在矩阵a中就有3个列变量分别为a(:,1), a(:,2), a(:,3)。

    在协方差矩阵c中,每一个元素c(i,j)为对第i列与第j列的协方差,例如c(1,2) = -4.1667为第一列与第二列的协方差。

    拿c(1,2)的求解过程来说

    c(1,2)=sum((a(:,1)-mean(a(:,1))).*(a(:,2)-mean(a(:,2))))/(size(a,1)-1);

    1. a(:,1)-mean(a(:,1)),第一列的元素减去该列的均值得到

    -1.3333

    -2.3333

    3.6667

    2,  a(:,2)-mean(a(:,2)),第二列的元素减去该列的均值得到

    -0.3333

    1.6667

    -1.3333

    3, 再将第一步与第二部的结果相乘

    -1.3333        -0.3333           0.4444

    -2.3333  .*     1.6667  =     -3.8889

    3.6667         -1.3333          -4.8889

    4, 再将结果求和/size(a,1)-1 得 -4.1667,该值即为c(1,2)的值。

    再细看一下是不是与协方差公式:Cov(X,Y) = E{ [ (X-E(X) ] [ (Y-E(Y) ] }过程基本一致呢,只是在第4步的时候matlab做了稍微的调整,自由度为n-1,减少了一行的样本值个数。

    >> a=[-1,1,2;-2,3,1;4,0,9]

    a =

    -1     1     2

    -2     3     1

    4     0     9

    >> cov(a)

    ans =

    10.3333   -4.1667   14.0000

    -4.1667    2.3333   -5.5000

    14.0000   -5.5000   19.0000

    >> dim1=a(:,1)

    dim1 =

    -1

    -2

    4

    >> dim2=a(:,2)

    dim2 =

    1

    3

    0

    >> dim3=a(:,3)

    dim3 =

    2

    1

    9

    >> dim1-mean(dim1)

    ans =

    -1.3333

    -2.3333

    3.6667

    >> dim2-mean(dim2)

    ans =

    -0.3333

    1.6667

    -1.3333

    >> m=dim1-mean(dim1)

    m =

    -1.3333

    -2.3333

    3.6667

    >> m=dim2-mean(dim2)

    m =

    -0.3333

    1.6667

    -1.3333

    >> m=dim1-mean(dim1)

    m =

    -1.3333

    -2.3333

    3.6667

    >> n=dim2-mean(dim2)

    n =

    -0.3333

    1.6667

    -1.3333

    >> m.*n

    ans =

    0.4444

    -3.8889

    -4.8889

    >> size(a,1)

    ans =

    3

    >> sum(m.*n)

    ans =

    -8.3333

    >> ans/2

    ans =

    -4.1667

    大盘预测

    国富论

    posted on 2015-08-26 19:06 华梦行 阅读(174) 评论(0)  编辑  收藏

    展开全文
  • %% Parametric % 计算 99% 与 95% 水平的...(预期收益率、预期协方差矩阵、样本 个数、收益率间隔、模拟次数) simulated......Matlab 协方差实战上面涉及的内容都比较容易,协方差矩阵似乎也很简单,但实战起来就很...
  • 一、协方差矩阵的定义及其计算公式  协方差矩阵在机器学习中经常用到,查看wiki:http://zh.wikipedia.org/wiki/%E5%8D%8F%E6%96%B9%E5%B7%AE%E7%9F%A9%E9%98%B5 可知协方差矩阵的具体计算公式如下: 在统计学与...
  • end end c = 10.3333 -4.1667 3.0000 -4.1667 2.3333 -1.5000 3.0000 -1.5000 1.0000 c为求得的协方差矩阵,在matlab以矩阵a的每一列为变量,对应的每一行为样本。这样在矩阵a中就有3个列变量分别为a(:,1), a(:,2),...
  • matlab协方差矩阵>> A=[0,0,0;2,0,2;]A =0 0 02 0 2>> v = diag(cov(A))'v =2 0 2help里面的cov 函数,你自己看一下吧!MATLAB怎么计算协方差>> x=rand(1,5);>> y=2*rand(1,5);>> ...
  • 运行版本:1.MatlabR2015b windows64Bit2.https://octave-online.net/3.http://www.compileonline.com/execute_matlab_online.php代码:%自编协方差矩阵计算法结果一致,但与matlab自带的cov函数不一致% Rxx.mclose ...
  • 这里只针对协方差矩阵的计算做说明,并与numpy和MATLAB中的协方差矩阵计算做对比。关于协方差矩阵的定义这里不再赘述。 混淆点 关于矩阵中数据是按照列排列和按照行排列的出来的协方差矩阵是不同的。 如果数据...
  • matlab 计算协方差矩阵

    千次阅读 2019-03-19 19:14:30
    但是在有些用到协方差的算法中, 分母使用了N,而不是N-1。但是由于样本很多,差别不大。 >> v=magic(3) v = 8 1 6 3 5 7 4 9 2 >> cov(v) ans = 7 -8 1 -8 16 -8 ...
  • 介绍了Matlab 中如何使用 mean 、var 、std、cov 函数等
  • 三、协方差矩阵前面提到的猥琐和受欢迎的问题是典型的二维问题,而协方差也只能处理二维问题,那维数多了自然就需要计算多个协方差,比如n维的数据集就需要计算个协方差,那自然而然我们会想到...四、Matlab协方差...
  • Matlab协方差矩阵和相关矩阵

    万次阅读 2018-08-11 21:36:15
    X = [12.5 586;  24 754;  15.3 850;  18 667;  31.2 750];%X是初始矩阵 CovX=cov(X); CorrX=corr(X);  
  • 感谢公开提出这个问题,因为我需要进行类似的转换 - 从2d标准偏差椭球转换为2x2协方差矩阵 . 对于另一种方式,有很多参考资料,但我发现的唯一参考是在下面,这使我得出结论,你犯了一个小错误,但你的推导带来了更...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 455
精华内容 182
关键字:

matlab协方差矩阵

matlab 订阅