matlab 中的cov等的统计函数的用法;假设X={xij}是一个p*n的矩阵,即有p个变元,n次观察,如何求协方差矩
最佳回答
最新回答共有2条回答
-
2026-04-02 09:50:25干净的鼠标
回复>> a=[1 2 3;2 5 6]a = 1 2 3 2 5 6>> b=mean(a)%%mean是按列求平均值,从b中的值可以看出b = 1。5000 3。5000 4。5000>> c=mean(a')%%所以要按行求平均值,直接转置求取,最后对c再求转置即可得到p维列向量c = 2。0000 4。3333%%%%%%%%%%%%%%%%%%%%%%%%%%>> M=rand(4,3)M = 0。9501 0。8913 0。8214 0。2311 0。7621 0。4447 0。6068 0。4565 0。6154 0。4860 0。0185 0。7919>> m=cov(M)m = 0。0892 0。0330 0。0405 0。0330 0。1505 -0。0186 0。0405 -0。0186 0。0305%%%%%%%%可以看出最后得到的协方差是3*3,由此知cov也是按列计算的,m对角线的元素是每列的方差,其余元素是列与列之间的协方差>> n=cov(M')n = 0。0042 -0。0061 -0。0006 -0。0110 -0。0061 0。0714 -0。0214 -0。0714 -0。0006 -0。0214 0。0080 0。0326 -0。0110 -0。0714 0。0326 0。1517%%转置后计算协方差,n为4*4,那么对角线元素就是行的方差,其余元素就是行与行之间的协方差。%%%%%%%%%%%%%%%%%关于cov计算的结果和手算的结果不同,这里的原因是:matlab在计算相关矩阵时,把每一列的数作为一个随机变量的样本,每一行作为一个这几个随机变量的联合样本,即第i个随机变量取第k行的样本值时,第j个随机变量也取第k行的样本值。利用这个性质,我们就可以用协方差的公式代入来计算协方差矩阵了。 然而,由于矩阵中给出只是这些随机变量的样本,根据概率论的知识我们知道,由于我们不知道这些随机变量的概率分布(或联合概率分布),我们是不可能计算出这些随机变量的期望、方差或是协方差的,而只能计算出它们的一个无偏估计,即样本均值、样本方差与样本协方差。其计算公式如下所示:
热门文章
- 康达学院专转本五年制
- 高考一个考场分ab卷吗
- not only but also用法
- 某物体做自由落体运动,从释放开始计时,则物体在前2s内的平均速度为______m/s,物体下落2m时的速度大小为______m/s.
- 三角函数公式大全表格
- 地理中考必背知识点2022
- 2013-2014学年小学六年级科学上学期期末考试试卷及答案
- 人教版2014-2015学年小学五年级英语第二学期期中教学质量检测试卷及答案
- 【Linux驱动开发】设备树详解(二)设备树语法详解
- 别跟客户扯细节
- 在别的城市买房子能落户吗
- 卖房前要把装修贷还完吗
- 高中政治教学提高教学效果的方法探究
- “互联网+”背景下的初中英语课堂教学改革与创新策略研究
- 2022年终止合同范本
- 租房合同范本范文
- 如何挑选土豆
- 如何挑选土鸡
