MATLAB概率統計函數(2)


4.5  隨機變量的數字特征

4.5.1  平均值、中值

命令  利用mean求算術平均值

格式  mean(X)       %X為向量,返回X中各元素的平均值

mean(A)       %A為矩陣,返回A中各列元素的平均值構成的向量

mean(A,dim)   %在給出的維數內的平均值

說明  X為向量時,算術平均值的數學含義是,即樣本均值。 

4-30

>> A=[1 3 4 5;2 3 4 6;1 3 1 5]

A =

     1     3     4     5

     2     3     4     6

     1     3     1     5

>> mean(A)

ans =

    1.3333    3.0000    3.0000    5.3333

>> mean(A,1)

ans =

   1.3333    3.0000    3.0000    5.3333

命令  忽略NaN計算算術平均值

格式  nanmean(X)   %X為向量,返回X中除NaN外元素的算術平均值。

      nanmean(A)   %A為矩陣,返回A中各列除NaN外元素的算術平均值向量。

4-31

>> A=[1 2 3;nan 5 2;3 7 nan]

A =

     1     2     3

   NaN     5     2

     3     7   NaN

>> nanmean(A)

ans =

    2.0000    4.6667    2.5000

命令  利用median計算中值(中位數)

格式  median(X)       %X為向量,返回X中各元素的中位數。

median(A)       %A為矩陣,返回A中各列元素的中位數構成的向量。

median(A,dim)   %求給出的維數內的中位數

4-32

>> A=[1 3 4 5;2 3 4 6;1 3 1 5]

A =

     1     3     4     5

     2     3     4     6

     1     3     1     5

>> median(A)

ans =

     1     3     4     5

命令  忽略NaN計算中位數

格式  nanmedian(X)   %X為向量,返回X中除NaN外元素的中位數。

      nanmedian(A)   %A為矩陣,返回A中各列除NaN外元素的中位數向量。

4-33

>> A=[1 2 3;nan 5 2;3 7 nan]

A =

     1     2     3

   NaN     5     2

     3     7   NaN

>> nanmedian(A)

ans =

    2.0000    5.0000    2.5000 

命令  利用geomean計算幾何平均數

格式  M=geomean(X)   %X為向量,返回X中各元素的幾何平均數。

      M=geomean(A)   %A為矩陣,返回A中各列元素的幾何平均數構成的向量。

說明  幾何平均數的數學含義是,其中:樣本數據非負,主要用於對數正態分布。

4-34

>> B=[1 3 4 5]

B =

     1     3     4     5

>> M=geomean(B)

M =

    2.7832

>> A=[1 3 4 5;2 3 4 6;1 3 1 5]

A =

     1     3     4     5

     2     3     4     6

     1     3     1     5

>> M=geomean(A)

M =

    1.2599    3.0000    2.5198    5.3133

命令  利用harmmean求調和平均值

格式  M=harmmean(X)   %X為向量,返回X中各元素的調和平均值。

      M=harmmean(A)   %A為矩陣,返回A中各列元素的調和平均值構成的向量。

說明  調和平均值的數學含義是,其中:樣本數據非0,主要用於嚴重偏斜分布。

4-35  

>> B=[1  3  4  5]

B =

     1     3     4     5

>> M=harmmean(B)

M =

    2.2430

>> A=[1 3 4 5;2 3 4 6;1 3 1 5]

A =

     1     3     4     5

     2     3     4     6

     1     3     1     5

>> M=harmmean(A)

M =

    1.2000    3.0000    2.0000    5.2941

4.5.2  數據比較

命令  排序

格式  Y=sort(X)     %X為向量,返回X按由小到大排序后的向量。

      Y=sort(A)     %A為矩陣,返回A的各列按由小到大排序后的矩陣。

      [Y,I]=sort(A)   % Y為排序的結果,I中元素表示Y中對應元素在A中位置。

sort(A,dim)    %在給定的維數dim內排序

說明  若X為復數,則通過|X|排序。

4-36

>> A=[1 2 3;4 5 2;3 7 0]

A =

     1     2     3

     4     5     2

     3     7     0

>> sort(A)

ans =

     1     2     0

     3     5     2

     4     7     3

>> [Y,I]=sort(A)

Y =

     1     2     0

     3     5     2

     4     7     3

I =

     1     1     3

     3     2     2

     2     3     1

命令  按行方式排序

函數  sortrows

格式  Y=sortrows(A)        %A為矩陣,返回矩陣YYA的第1列由小到大,以行方式排序后生成的矩陣。

      Y=sortrows(A, col)    %按指定列col由小到大進行排序

      [Y,I]=sortrows(A, col)  % Y為排序的結果,I表示Y中第col列元素在A中位置。

說明  若X為復數,則通過|X|的大小排序。

4-37

>> A=[1 2 3;4 5 2;3 7 0]

A =

     1     2     3

     4     5     2

     3     7     0

>> sortrows(A)

ans =

     1     2     3

     3     7     0

     4     5     2

>> sortrows(A,1)

ans =

     1     2     3

     3     7     0

     4     5     2

>> sortrows(A,3)

ans =

     3     7     0

     4     5     2

     1     2     3

>> sortrows(A,[3 2])

ans =

     3     7     0

     4     5     2

     1     2     3

>> [Y,I]=sortrows(A,3)

Y =

     3     7     0

     4     5     2

     1     2     3

I =

     3

     2

     1

命令  求最大值與最小值之差

函數  range

格式  Y=range(X)  %X為向量,返回X中的最大值與最小值之差。

      Y=range(A)  %A為矩陣,返回A中各列元素的最大值與最小值之差。

4-38

>> A=[1 2 3;4 5 2;3 7 0]

A =

     1     2     3

     4     5     2

     3     7     0

>> Y=range(A)

Y =

     3     5     3

4.5.3  期望

命令  計算樣本均值

函數  mean

格式  用法與前面一樣

4-39  隨機抽取6個滾珠測得直徑如下:(直徑:mm)

14.70  15.21  14.90  14.91  15.32  15.32

試求樣本平均值

解:>>X=[14.70  15.21  14.90  14.91  15.32  15.32]

>>mean(X)   %計算樣本均值

則結果如下:

ans =

    15.0600

命令  由分布律計算均值

利用sum函數計算

4-40  設隨機變量X的分布律為:

X

-2

-1

0

1

2

P

0.3

0.1

0.2

0.1

0.3

(X)  E(X2-1)

解:在Matlab編輯器中建立M文件如下:

X=[-2 -1 0 1 2];

p=[0.3 0.1 0.2 0.1 0.3];

EX=sum(X.*p)

Y=X.^2-1

EY=sum(Y.*p)

運行后結果如下:

EX =

     0

Y =

    3     0    -1     0     3

EY =

    1.6000

4.5.4  方差

命令  求樣本方差

函數  var

格式  D=var(X)  %var(X)=,若X為向量,則返回向量的樣本方差。

      D=var(A)   %A為矩陣,則DA的列向量的樣本方差構成的行向量。

D=var(X, 1)   %返回向量(矩陣)X的簡單方差(即置前因子為的方差)

D=var(X, w)   %返回向量(矩陣)X的以w為權重的方差

命令  求標准差

函數  std  

格式  std(X)    %返回向量(矩陣)X的樣本標准差(置前因子為)即:

std(X,1)    %返回向量(矩陣)X的標准差(置前因子為

std(X, 0)    %std (X)相同

std(X, flag, dim)   %返回向量(矩陣)中維數為dim的標准差值,其中flag=0時,置前因子為;否則置前因子為。

4-41  求下列樣本的樣本方差和樣本標准差,方差和標准差

14.70  15.21  14.90  15.32  15.32

解:

>>X=[14.7 15.21 14.9 14.91 15.32 15.32];

>>DX=var(X,1)       %方差

  DX =

       0.0559

>>sigma=std(X,1)     %標准差

sigma =

     0.2364

>>DX1=var(X)       %樣本方差

DX1 =

       0.0671

>>sigma1=std(X)     %樣本標准差

  sigma1 =

    0.2590

命令  忽略NaN的標准差

函數  nanstd

格式  y = nanstd(X)   %若X為含有元素NaN的向量,則返回除NaN外的元素的標准差,若X為含元素NaN的矩陣,則返回各列除NaN外的標准差構成的向量。

4-42

>> M=magic(3)    %產生3階魔方陣

M =

      8     1     6

      3     5     7

      4     9     2

>> M([1 6 8])=[NaN NaN NaN]    %替換3階魔方陣中第168個元素為NaN

M =

    NaN     1     6

      3     5   NaN

      4   NaN     2

>> y=nanstd(M)    %求忽略NaN的各列向量的標准差

y =

    0.7071    2.8284    2.8284

>> X=[1 5];     %忽略NaN的第2列元素

>> y2=std(X)    %驗證第2列忽略NaN元素的標准差

y2 =

      2.8284

命令  樣本的偏斜度

函數  skewness

格式  y = skewness(X)   %X為向量,返回X的元素的偏斜度;X為矩陣,返回X各列元素的偏斜度構成的行向量。

y = skewness(X,flag)   %flag=0表示偏斜糾正,flag=1(默認)表示偏斜不糾正。

說明  偏斜度樣本數據關於均值不對稱的一個測度,如果偏斜度為負,說明均值左邊的數據比均值右邊的數據更散;如果偏斜度為正,說明均值右邊的數據比均值左邊的數據更散,因而正態分布的偏斜度為 0;偏斜度是這樣定義的:

其中:μ為x的均值,σ為x的標准差,E(.)為期望值算子

4-43  

>> X=randn([5,4])

X =

    0.2944    0.8580   -0.3999    0.6686

   -1.3362    1.2540    0.6900    1.1908

    0.7143   -1.5937    0.8156   -1.2025

    1.6236   -1.4410    0.7119   -0.0198

   -0.6918    0.5711    1.2902   -0.1567

>> y=skewness(X)

y =

   -0.0040   -0.3136   -0.8865   -0.2652

>> y=skewness(X,0)

y =

   -0.0059   -0.4674   -1.3216   -0.3954

4.5.5  常見分布的期望和方差

命令  均勻分布(連續)的期望和方差

函數  unifstat

格式  [M,V] = unifstat(A,B)    %AB為標量時,就是區間上均勻分布的期望和方差,AB也可為向量或矩陣,則MV也是向量或矩陣。

4-44

>>a = 1:6; b = 2.*a;

>>[M,V] = unifstat(a,b)

M =

    1.5000    3.0000    4.5000    6.0000    7.5000    9.0000

V =

    0.0833    0.3333    0.7500    1.3333    2.0833    3.0000

命令  正態分布的期望和方差

函數  normstat

格式  [M,V] = normstat(MU,SIGMA)    %MUSIGMA可為標量也可為向量或矩陣,則M=MUV=SIGMA2。

4-45

>> n=1:4;

>> [M,V]=normstat(n'*n,n'*n)

M =

     1     2     3     4

     2     4     6     8

     3     6     9    12

     4     8    12    16

V =

     1     4     9    16

     4    16    36    64

     9    36    81   144

    16    64   144   256

命令  二項分布的均值和方差

函數  binostat

格式  [M,V] = binostat(N,P)    %NP為二項分布的兩個參數,可為標量也可為向量或矩陣。

4-46

>>n = logspace(1,5,5)

n =

          10         100        1000       10000      100000

>>[M,V] = binostat(n,1./n)

M =

     1     1     1     1     1

V =

    0.9000    0.9900    0.9990    0.9999    1.0000

>>[m,v] = binostat(n,1/2)

m =

           5          50         500        5000       50000

v =

   1.0e+04 *

    0.0003    0.0025    0.0250    0.2500    2.5000

常見分布的期望和方差見下表4-6

4-6  常見分布的均值和方差

函數名

調用形式

注  釋

unifstat

[M,V]=unifstat ( a, b)

均勻分布(連續)的期望和方差,M為期望,V為方差

unidstat

[M,V]=unidstat (n)

均勻分布(離散)的期望和方差

expstat

[M,V]=expstat (p, Lambda)

指數分布的期望和方差

normstat

[M,V]=normstat(mu,sigma)

正態分布的期望和方差

chi2stat

[M,V]=chi2stat (x, n)

卡方分布的期望和方差

tstat

[M,V]=tstat ( n)

t分布的期望和方差

fstat

[M,V]=fstat ( n1, n2)

F分布的期望和方差

gamstat

[M,V]=gamstat ( a, b)

分布的期望和方差

betastat

[M,V]=betastat ( a, b)

分布的期望和方差

lognstat

[M,V]=lognstat ( mu, sigma)

對數正態分布的期望和方差

nbinstat

[M,V]=nbinstat ( R, P)

負二項式分布的期望和方差

ncfstat

[M,V]=ncfstat ( n1, n2, delta)

非中心F分布的期望和方差

nctstat

[M,V]=nctstat ( n, delta)

非中心t分布的期望和方差

ncx2stat

[M,V]=ncx2stat ( n, delta)

非中心卡方分布的期望和方差

raylstat

[M,V]=raylstat ( b)

瑞利分布的期望和方差

Weibstat

[M,V]=weibstat ( a, b)

韋伯分布的期望和方差

Binostat

[M,V]=binostat (n,p)

二項分布的期望和方差

Geostat

[M,V]=geostat (p)

幾何分布的期望和方差

hygestat

[M,V]=hygestat (M,K,N)

超幾何分布的期望和方差

Poisstat

[M,V]=poisstat (Lambda)

泊松分布的期望和方差

4.5.6  協方差與相關系數

命令  協方差

函數  cov

格式  cov(X)    %求向量X的協方差

      cov(A)    %求矩陣A的協方差矩陣,該協方差矩陣的對角線元素是A的各列的方差,即:var(A)=diag(cov(A))。

      cov(X,Y)   %X,Y為等長列向量,等同於cov([X  Y])。

4-47  

>> X=[0 -1 1]';Y=[1 2 2]'

>> C1=cov(X)     %X的協方差

C1 =

     1

>> C2=cov(X,Y)     %列向量XY的協方差矩陣,對角線元素為各列向量的方差

C2 =

    1.0000         0

         0    0.3333

>> A=[1 2 3;4 0 -1;1 7 3]

A =

     1     2     3

     4     0    -1

     1     7     3

>> C1=cov(A)    %求矩陣A的協方差矩陣

C1 =

    3.0000   -4.5000   -4.0000

   -4.5000   13.0000    6.0000

   -4.0000    6.0000    5.3333

>> C2=var(A(:,1))    %A的第1列向量的方差

C2 =

     3

>> C3=var(A(:,2))     %A的第2列向量的方差

C3 =

    13

>> C4=var(A(:,3))

C4 =

    5.3333

命令  相關系數

函數  corrcoef

格式  corrcoef(X,Y)   %返回列向量X,Y的相關系數,等同於corrcoef([X  Y])。

corrcoef (A)    %返回矩陣A的列向量的相關系數矩陣

4-48

>> A=[1 2 3;4 0 -1;1 3 9]

A =

     1     2     3

     4     0    -1

     1     3     9

>> C1=corrcoef(A)    %求矩陣A的相關系數矩陣

C1 =

    1.0000   -0.9449   -0.8030

   -0.9449    1.0000    0.9538

   -0.8030    0.9538    1.0000

>> C1=corrcoef(A(:,2),A(:,3))    %A的第2列與第3列列向量的相關系數矩陣

C1 =

    1.0000    0.9538

    0.9538    1.0000


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM