【20180128】【matlab】均值、标准差、方差、协方差、中值的求解

  • 求均值:

向量

  1. 行向量A:mean(A)
    A = [1,2,3,4,5];
    mean(A)
    
    ans =
         3
    
  1. 列向量A:mean(A)
    B = [0,3,1,0,6]';
    mean(B)
    
    ans =
         2
    
矩阵---mean(A,dim)
  1. 按列求均值:mean(A) 或 mean(A,1),注:若后面无参数,默认按列求均值
    A = [1,2,6;7,5,9;0,5,1];
    mean(A)
    mean(A,1)
    
    ans =
              2.66666666666667                         4          5.33333333333333
    ans =
              2.66666666666667                         4          5.33333333333333
  1. 按行求均值:mean(A,2)
    A = [1,2,6;7,5,9;0,5,1];
    mean(A,2)
    
    ans =
         3
         7
         2
  2. 求所有元素均值:mean(mean(A)) 或mean2(A),即:mean(mean(A))相当于mean2(A)!
    A = [1,2,6;7,5,9;0,5,1];
    mean(mean(A))
    mean2(A)
    
    ans =
         4
    ans =
         4
  • 求标准差:
  1. std(A,a):a=0时为无偏估计,分母为n-1;a=1时为有偏估计,分母为n。默认形式:std(A,0,1)
     
  2. std(A,a,b):增加的形参b是维数,若A是二维矩阵,则b=1表示按行分,b=2表示按列分;若为三维以上,b=i就是增多的一维维数
A = [1,2,6;7,5,9;0,5,1];
std(A)
std(A,0)
std(A,1)
std(A,0,1)
std(A,0,2)

ans =
          3.78593889720018          1.73205080756888          4.04145188432738
ans =
          3.78593889720018          1.73205080756888          4.04145188432738
ans =
          3.09120616516523           1.4142135623731          3.29983164553722
ans =
          3.78593889720018          1.73205080756888          4.04145188432738
ans =
          2.64575131106459
                         2
          2.64575131106459
  • 求方差:
  1. var():注意,var( )函数中采用的公式,分母是n-1,而不是n,实际上var()函数求的并不不是方差。matlab并没有求解方差的函数,因此一般先std()求解标准差,再平方。std(A,0,1)求列向量均方差,std(A,0,2)求行向量均方差。若要求整个矩阵的均方差则使用std2()
    A = [1,2,5,2,6];
    B = [1,3,5;6,3,9;0,0,1];
    C = [1,2,5,2,6]';
    var(A)
    var(A,0)
    var(A,1)
    var(B)
    var(B,0)
    var(B,1)
    var(C)
    var(C,0)
    var(C,1)
    
    ans =
                           4.7
    ans =
                           4.7
    ans =
                          3.76
    ans =
              10.3333333333333                         3                        16
    ans =
              10.3333333333333                         3                        16
    ans =
              6.88888888888889                         2          10.6666666666667
    ans =
                           4.7
    ans =
                           4.7
    ans =
                          3.76
  • 求数据中值:
  1. median(A)
    A = [1,2,3,4,5,6,7]
    B = [1,2,3;5,4,6;8,9,10]
    median(A)
    median(B)
    median(B,1)
    median(B,2)
    median(median(B))
    median2(B)
    
    A =
         1     2     3     4     5     6     7
    B =
         1     2     3
         5     4     6
         8     9    10
    ans =
         4
    ans =
         5     4     6
    ans =
         5     4     6
    ans =
         2
         5
         9
    ans =
         5
    未定义函数或变量 'median2'。 

注: 没有median2()这个用法!求中值时,首先对数值进行从小到大排序,之后才运算!若数字个数为偶数,则返回中间两个数值的平均值。

  • 求协方差(矩阵):
  1. cov(A)
    A = [1,2,5,2,6];
    B = [1,3,5;6,3,9;0,0,1];
    C = [1,2,5,2,6]';
    cov(A)
    cov(A,0)
    cov(A,1)
    cov(B)
    cov(B,0)
    cov(B,1)
    cov(C)
    cov(C,0)
    cov(C,1)
    
    ans =
                           4.7
    ans =
                           4.7
    ans =
                          3.76
    ans =
              10.3333333333333                       3.5                        12
                           3.5                         3                         6
                            12                         6                        16
    ans =
              10.3333333333333                       3.5                        12
                           3.5                         3                         6
                            12                         6                        16
    ans =
              6.88888888888889          2.33333333333333                         8
              2.33333333333333                         2                         4
                             8                         4          10.6666666666667
    ans =
                           4.7
    ans =
                           4.7
    ans =
                          3.76

猜你喜欢

转载自blog.csdn.net/weixin_40583722/article/details/79180234