matlab求协方差矩阵

2024-05-20

1. matlab求协方差矩阵

是你概念搞错了。
你把一行六列的矩阵和6维随机变量搞混了。
1.协方差是衡量随机变量之间的关系,给定两个数,你说他们两个之间能不能求协方差呢?很显然这是求不出来的。
2.既然是求的随机变量间的关系,概率分布未知,matlab的cov求的又是什么呢?cov函数是通过两个信号产生的一些数据,对协方差进行估计。
3.上一条也就解释了为什么他会得到一个2x2的矩阵,因为他把你的两个矩阵作为两个随机变量的输出了,进行估计。最后得到的自然就是两个变量的协方差矩阵了。

matlab求协方差矩阵

2. 在matlab中如何求两个列矩阵的协方差?

matlab函数:mean
>>x=[1,2,3]
>>mean(x)=2
如果x是一个矩阵,则其均值是一个向量组。mean(x,1)为列向量的均值,mean(x,2)为行向量的均值。
>>x=[1
2
3
4
5
6]
>>mean(x,1)=[2.5,
3.5,
4.5]
>>mean(x,2)=[2
5]
若要求整个矩阵的均值,则为mean(mean(x))。
>>mean(mean(x))=3.5
也可使用mean2函数:
>>mean2(x)=3.5
协方差矩阵
a=[61.45,55.9,61.95,59,58.14,53.61,55.48,54.21,61.52,54.92];
b=[40.36,39.8,49.2,48,51.5,49.39,51.13,58.06,61,62.35];
c=[8.61,8.91,10.43,13.32,13.48,15.75,18.14,19.95,21.95,23.53];
d=[14.31,14.72,15.28,15.91,14.67,15,15.86,15.16,13.72,12.94];
e=[7.67,7.75,8.15,9.24,10.68,10.58,10.31,10,8.91,8.51];
>>
q=[a',b',c',d',e'];
>>
w=cov(q)
w
=
10.3710
-4.7446
-6.6023
-0.1873
-1.8881
-4.7446
59.1503
38.7606
-3.0743
3.0982
-6.6023
38.7606
28.6966
-2.0199
2.4166
-0.1873
-3.0743
-2.0199
0.8474
0.3936
-1.8881
3.0982
2.4166
0.3936
1.3412
来自网络

3. matlab求矩阵的自协方差。。。。急。。!!!

是你概念搞错了。

你把一行六列的矩阵和6维随机变量搞混了。

1.协方差是衡量随机变量之间的关系,给定两个数,你说他们两个之间能不能求协方差呢?很显然这是求不出来的。

2.既然是求的随机变量间的关系,概率分布未知,matlab的cov求的又是什么呢?cov函数是通过两个信号产生的一些数据,对协方差进行估计。

3.上一条也就解释了为什么他会得到一个2x2的矩阵,因为他把你的两个矩阵作为两个随机变量的输出了,进行估计。最后得到的自然就是两个变量的协方差矩阵了。

matlab求矩阵的自协方差。。。。急。。!!!

4. matlab如何求方差

matlab的方差求算在matlab程序上输入下列例子:
Matlab 函数:var
>>X=[1,2,3,4]
>>var(X)=1.6667
>> sum((X(1,:)-mean(X)).^2)/length(X)=1.2500
>> sum((X(1,:)-mean(X)).^2)/(length(X)-1)=1.6667
var没有求矩阵的方差功能,可使用std先求均方差,再平方得到方差。
std,均方差,std(X,0,1)求列向量方差,std(X,0,2)求行向量方差。
>>X=[1 2
3 4]
>>std(X,0,1)=1.4142  1.4142
>>std(X,0,2)=0.7071
0.7071
若要求整个矩阵所有元素的均方差,则要使用std2函数:
>>std2(X)=1.2910
要注意的是var函数所采用公式中,分母不是 ,而是 。这是因为var函数实际上求的并不是方差,而是误差理论中“有限次测量数据的标准偏差的估计值”。

扩展资料:matlab求方差时的注意事项:
1、装出错时,可换注册码继续安装,到同一目录;
2、谨记安装路径不要有中文名称;
3、成功安装完毕之后,如果遇到matlab启动后,窗口在打开一到两秒后就自动关闭了, 可按以下方法试试:【假设你安装的目录为c:\MATLAB\】(不过不建议安装到C盘,那样会影响系统速度)
参考资料:百度百科 matlab

5. MATLAB怎么计算协方差?

>> x=rand(1,5);
>> y=2*rand(1,5);
>> cov(x,y) %计算协方差

ans =

    0.1079   -0.0225
   -0.0225    0.6148

MATLAB怎么计算协方差?

6. MATLAB怎么计算协方差?

>> x=rand(1,5);\x0d\x0a>> y=2*rand(1,5);\x0d\x0a>> cov(x,y) %计算协方差\x0d\x0a\x0d\x0aans =\x0d\x0a\x0d\x0a    0.1079   -0.0225\x0d\x0a   -0.0225    0.6148

7. matlab中已知协方差矩阵怎样算相关系数?

已知协方差矩阵,计算相关系数可以按图中的公式进行。
R就是相关系数矩阵,C为协方差矩阵。
>> a=rand(5,5)
a =
    0.9501    0.7621    0.6154    0.4057    0.0579
    0.2311    0.4565    0.7919    0.9355    0.3529
    0.6068    0.0185    0.9218    0.9169    0.8132
    0.4860    0.8214    0.7382    0.4103    0.0099
    0.8913    0.4447    0.1763    0.8936    0.1389
>> C=cov(a)
C =
    0.0878    0.0129   -0.0526   -0.0253   -0.0276
    0.0129    0.1022   -0.0229   -0.0739   -0.0993
   -0.0526   -0.0229    0.0819   -0.0037    0.0515
   -0.0253   -0.0739   -0.0037    0.0774    0.0624
   -0.0276   -0.0993    0.0515    0.0624    0.1079%%协方差矩阵
>> R=corrcoef(a)
R =
    1.0000    0.1364   -0.6207   -0.3063   -0.2836
    0.1364    1.0000   -0.2503   -0.8309   -0.9454
   -0.6207   -0.2503    1.0000   -0.0460    0.5478
   -0.3063   -0.8309   -0.0460    1.0000    0.6822
   -0.2836   -0.9454    0.5478    0.6822    1.0000%%相关系数矩阵
可以看出相关系数矩阵是是对称阵。它的计算结果R(1,2)是第一列和第二列的相关系数;R(1,3)是第一列和第三列的相关系数;R(2,3)是第二列和第三列的相关系数;R(1,2)和R(2,1)都是第一列和第二列的相关系数所以是相等的。

matlab中已知协方差矩阵怎样算相关系数?

8. matlab中已知协方差矩阵,怎样算相关系数?

计算方法如下:
假设协方差矩阵为c
第i行与第j行的相关系数为:
r(i,j)=c(i,j)/sqrt(c(i,i)*c(j,j))
若要求整个矩阵可用循环实现
[m,n]=size(c);
for i=1:m
for j=1:n
r(i,j)=c(i,j)/sqrt(c(i,i)*c(j,j));
end
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。