您的位置:首页 > 编程语言 > MATLAB

20171205_Matlab求方差,均值,均方差,协方差的函数

2017-12-05 10:58 363 查看
1、 均值

数学定义:

 


Matlab函数:mean

>>X=[1,2,3]

>>mean(X)=2

 

如果X是一个矩阵,则其均值是一个向量组。mean(X,1)为列向量的均值,mean(X,2)为行向量的均值。

>>X=[12 3

     45 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

 

median,求一组数据的中值,用法与mean相同。

>>X=[1,2,9]

>>mean(X)=4

>>median(X)=2

 

2、 方差

数学定义:



 

均方差:

Matlab 函数:var

要注意的是var函数所采用公式中,分母不是N,而是N-1。这是因为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=[12

     34]

>>std(X,0,1)=1.4142  1.4142

>>std(X,0,2)=0.7071

            0.7071

 

若要求整个矩阵所有元素的均方差,则要使用std2函数:

>>std2(X)=1.2910

4、协方差矩阵

 
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: