分布的擬合和檢驗

2021-07-03 14:10:54 字數 4176 閱讀 9795

把樣本的分布函式(也稱為「經驗分布函式」),與某種理論的分布函式(如正態分佈)疊放在一起,進行比較。

例如:

score = xlsread('examp02_14.xls','sheet1','g2:g52');

% 去掉總成績中的0,即缺考成績

score = score(score > 0); %樣本

figure; % 新建圖形視窗

% 繪製經驗分布函式圖,並返回圖形控制代碼h和結構體變數stats,

% 結構體變數stats有5個字段,分別對應最小值、最大值、平均值、中位數和標準差

[h,stats] = cdfplot(score);

set(h,'color','k','linewidth',2); % 設定線條顏色為黑色,線寬為2

%************************繪製理論正態分佈函式圖******************************

x = 40:0.5:100; % 產生乙個新的橫座標向量x

% 計算均值為stats.mean,標準差為stats.std的正態分佈在向量x處的分布函式值

y = normcdf(x,stats.mean,stats.std);

hold

on% 繪製正態分佈的分布函式曲線,並設定線條為品紅色虛線,線寬為2

plot(x,y,':k','linewidth',2);

% 新增標註框,並設定標註框的位置在圖形視窗的左上角

legend('經驗分布函式','理論正態分佈','location','northwest');

結果:

由圖可知該樣本近似服從正態分佈。

(1)利用kstest函式檢驗單個樣本是否服從指定分布(雙側檢驗),或者是否在指定的分布函式之下或之下(單側檢驗),注意這裡的分布是完全確定的,不含未知引數。

例如:

% 讀取檔案examp02_14.xls的第1個工作表中的g2:g52中的資料,即總成績資料

score = xlsread('examp02_14.xls','sheet1','g2:g52');

% 去掉總成績中的0,即缺考成績

score = score(score > 0);

% 生成cdf矩陣,用來指定分布:均值為79,標準差為10.1489的正態分佈

cdf = [score, normcdf(score, 79, 10.1489)];

% 呼叫kstest函式,檢驗總成績是否服從由cdf指定的分布

[h,p,ksstat,cv] = kstest(score,cdf)

注意:

結果:

由h=0,p=0.5486>0.05知接受假設,即認為總成績服從均值為79,標準差為10.1489的正態分佈。

(2)利用ktest2函式檢驗兩個樣本是否服從相同的分布(雙側檢驗),或者檢驗乙個樣本的分布函式是否在另乙個樣本的分布函式之上或者之下(單側檢驗),ktest2函式對比兩個樣本的經驗分布函式,即這裡的分布也是確定的。

【例1】:

% 讀取檔案examp02_14.xls的第1個工作表中的b2:b52中的資料,即班級資料

banji = xlsread('examp02_14.xls','sheet1','b2:b52');

% 讀取檔案examp02_14.xls的第1個工作表中的g2:g52中的資料,即總成績資料

score = xlsread('examp02_14.xls','sheet1','g2:g52');

% 去除缺考資料

score = score(score > 0);

banji = banji(score > 0);

% 分別提取60101和60102班的總成績

score1 = score(banji == 60101);

score2 = score(banji == 60102);

% 呼叫kstest2函式檢驗兩個班的總成績是否服從相同的分布

[h,p,ks2stat] = kstest2(score1,score2)

[h1,stats1] = cdfplot(score1);%繪製score1的經驗分布函式圖,並返回圖形控制代碼h1和結構體變數stats1

set(h1,'color','k','linewidth',2);

hold

on[h2,stats2] = cdfplot(score2);%繪製score2的經驗分布函式圖,並返回圖形控制代碼h2和結構體變數stats2

set(h2,'color','r','linewidth',2);

結果:

由h=0,p=0.7016>0.05故接受假設,即認為兩個班級的總成績服從相同的分布.

【例2】:利用ktest2完成(1)中例題

score = xlsread('examp02_14.xls','sheet1','g2:g52');

% 去除缺考資料

score = score(score > 0);randn('seed',0) % 指定隨機數生成器的初始種子為0

% 產生10000個服從均值為79,標準差為10.1489的正態分佈的隨機數,構成乙個列向量x

x = normrnd(mean(score),std(score),10000,1);

% 呼叫kstest2函式檢驗總成績資料score與隨機數向量x是否服從相同的分布

[h,p] = kstest2(score,x,0.05)

結果:

由h=0,p=0.5138>0.05知接受假設,即認為總成績服從均值為79,標準差為10.1489的正態分佈。

(3)利用lillietest函式檢驗樣本是否服從指定的分布(預設情況下為正態分佈),注意這裡分布的引數是根據樣本估計的。

【例1】:

score = xlsread('examp02_14.xls','sheet1','g2:g52');

% 去除缺考資料

score = score(score > 0);

% 呼叫lillietest函式進行lilliefors檢驗,檢驗總成績資料是否服從正態分佈

[h,p,kstat,critval] = lillietest(score)

結果:

由h=0,p=0.1346>0.05可知接受假設,即認為總成績服從正態分佈,該分布的均值、方差由樣本均值和方差代替。

【例2】:

score = xlsread('examp02_14.xls','sheet1','g2:g52');

% 去除缺考資料

score = score(score > 0);

% 呼叫lillietest函式進行lilliefors檢驗,檢驗總成績資料是否服從指數分布

[h, p] = lillietest(score,0.05,'exp')

結果:

由h=1,p<0.05知拒絕假設,即認為總成績不服從指數分布

擬合優度檢驗

可決係數 coefficient of determination 如果樣本回歸線對樣本觀測值擬合程度越好,各樣本觀測點與回歸線靠得越近,由樣本回歸做出解釋的離差平方和與總離差平方和越相近 反之,擬合程度越差,相差越大。可決係數的計算式 可決係數可以作為綜合度量回歸模型對樣本觀測值擬合優度的度量指標...

SPSS 分布型別的檢驗

假設檢驗的標準步驟 1 建立假設 根據問題的需要提出原假設h0,以及其對立面備擇假設h1。2 確立檢驗水準 即設立小概率事件的界值 3 進行試驗 得到用於統計分析的樣本,以該試驗的結果作為假設檢驗的根據。4 選定檢驗方法,計算檢驗統計量。5 確定p值。原假設也稱為零假設,備擇假設也稱為對立假設。對立...

SPSS 分布型別的檢驗

假設檢驗的標準步驟 1 建立假設 根據問題的需要提出原假設h0,以及其對立面備擇假設h1。2 確立檢驗水準 即設立小概率事件的界值 3 進行試驗 得到用於統計分析的樣本,以該試驗的結果作為假設檢驗的根據。4 選定檢驗方法,計算檢驗統計量。5 確定p值。原假設也稱為零假設,備擇假設也稱為對立假設。對立...