协方差的计算方法

协方差的计算方法版权声明 本文绝大部分转自 CSDN 博主 lslrh 123 文章 在此感谢 原文链接 https blog csdn net lslrh 123 article details 协方差的定义对于一般的分布 直接代入 E X 之类的就可以计算出来了 但真给你一个具体数值的分布 要计算协方差矩阵 根据这个公式来计算 还真不容易反应过来 网上值得参考的资料也不多 这里用一个例子

协方差的定义

协方差定义
对于一般的分布,直接代入E(X)之类的就可以计算出来了,但真给你一个具体数值的分布,要计算协方差矩阵,根据这个公式来计算,还真不容易反应过来。网上值得参考的资料也不多,这里用一个例子说明协方差矩阵是怎么计算出来的吧。

计算方法

Σ i j = ( 第 i 列 的 所 有 元 素 − 第 i 列 的 均 值 ) ∗ ( 第 j 列 的 所 有 元 素 − 第 j 列 的 均 值 ) \Sigma_{ij}=(第i列的所有元素-第i列的均值)*(第j列的所有元素-第j列的均值) Σij=iijj

Σ = ( 8.75 − 1 − 1 12 ) \Sigma=\bigl( \begin{matrix} 8.75 & -1 \\ -1 & 12 \end{matrix} \bigr) Σ=(8.751112)

用matlab计算这个例子

z=[1,2;3,6;4,2;5,2]

cov(z)

可以看出,matlab计算协方差过程中还将元素统一缩小了3倍。所以,协方差的matlab计算公式为:

Σ i j \Sigma_{ij} Σij=(第i列所有元素-第i列均值)*(第j列所有元素-第j列均值)/(样本数-1)

与matlab计算验证

 Z=[1 2 3 4;3 4 1 2;2 3 1 4] cov(Z) ans = 1.0000 1.0000 -1.0000 -1.0000 1.0000 1.0000 -1.0000 -1.0000 -1.0000 -1.0000 1.3333 0.6667 -1.0000 -1.0000 0.6667 1.3333 

R语言中的计算结果

是与matlab的结算结果相同的,验证程序如下:

> c1=matrix(c(1,2,3,4, 3,4,1,2, 2,3,1,4),nrow = 3,byrow = T) > cov(c1) [,1] [,2] [,3] [,4] [1,] 1 1 -1.0000000 -1.0000000 [2,] 1 1 -1.0000000 -1.0000000 [3,] -1 -1 1. 0. [4,] -1 -1 0. 1. 

可知该计算方法是正确的。我们还可以看出,协方差矩阵都是方阵,它的维度与样本维度有关(相等)。参考2中还给出了计算协方差矩阵的源代码,非常简洁易懂,在此感谢一下!

参考:

[1] http://en.wikipedia.org/wiki/Covariance_matrix

[2] http://www.cnblogs.com/cvlabs/archive/2010/05/08/1730319.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231632.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • spring cloud 入门系列三:使用Eureka 搭建高可用服务注册中心

    在上一篇中分享了如何使用Eureka进行服务治理,里面搭建的服务注册中心是单体的,但是在实际的应用中,分布式系统为了防止单体服务宕机带来严重后果,一般都会采用服务器集群的形式,服务注册中心也是一样

    2022年2月16日
    38
  • 股指期货跨期套利策略优化_股指期现套利策略盈亏

    股指期货跨期套利策略优化_股指期现套利策略盈亏股指期货跨期套利策略概述:本文章介绍使用同一标的不同交割日的股指期货的价差进行跨期套利的策略。本文由JoinQuant量化课堂推出,难度为进阶(下),深度为level-0。​作者:swlaw编辑

    2022年8月6日
    7
  • Nginx-代理apache负载均衡

    Nginx-代理apache负载均衡一、什么是负载均衡        当一台服务器单位时间访问量越大时,服务器压力就越大,大到超过自身承受能力时,服务器就容会崩掉。为了避免服务器崩溃,让用户有更好的体验,我们通过负载均衡的方式来分担服务器压力。        我们可以建立多个服务器,组成一个服务器集群,当用户访问网站时,先访问中间服务器,再让这个中间服务器在服务器集群中选择一个压力

    2025年10月9日
    2
  • POJ 1252 Euro Efficiency

    POJ 1252 Euro Efficiency

    2022年1月8日
    51
  • c++int转换成char_字符数字转为int型

    c++int转换成char_字符数字转为int型1.通过ascii码:chara=’0′;intia=(int)a;/*notethattheintcastisnotnecessary–intia=awouldsuffice*/cout<<ia<<endl;结果如下:可以看出这种方法得到的其实是char对应的ascii码。因为ascii码…

    2022年10月2日
    4
  • 学了一天java,我总结了这些知识点

    学了一天java,我总结了这些知识点大家好,我是KookNut39也是Tommy,在CSDN写文,写Java时候我是Tommy,分享一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。以前一直更新C/C++方面的知识,今天是我第一次更新Java方面的知识,以后会持续更新,感兴趣的欢迎关注博主,和博主一起从0学习Java知识。大家可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。文章目录1.注释(1)单行注释(2)多行注释(3)文档注释2.关键字3.保留字4.标识符5.Java数据类型(1)基本数据类型.

    2022年4月27日
    57

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号