MATLAB中均值、方差、均方差的计算方法

  • Post author:
  • Post category:其他



MATLAB中均值、方差、均方差的计算方法



(2007-06-07 15:39:07)

经常要用到,系统整理了一下。




1、





均值




数学定义:








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



median


,求一组数据的中值,用法与


mean


相同。


>>X=[1,2,9]


>>mean(X)=4


>>median(X)=2





2、





方差


数学定义:




均方差:


Matlab


函数:


var


要注意的是


var


函数所采用公式中,分母不是


,而是


。这是因为


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