matlab三角定位分析程序,Matlab chi2gof 分布分析程序求教
我想使用chi2gof命令來分析一組大樣本數據的分布情況,程序如下:function f=p_chi2gof(x,alpha)
% 本程序用于判別所給數據源的概率分布情況。
h1 = chi2gof(x,'cdf',@(z)normcdf(z,mean(x),std(x)),'nparams',2);
if h1==0
h1
disp('該數據源服從正態分布。')
else
disp('該數據源不服從正態分布。')
end
lamda=poissfit(x,alpha);
h2 = chi2gof(x,'cdf',@(z)poisscdf(z,lamda),'nparams',1);
h2;
if h2==0
disp('該數據源服從泊松分布。')
else
disp('該數據源不服從泊松分布。')
end
[ahat,bhat]=unifit(x,alpha);
h3= chi2gof(x,'cdf',@(z)unifcdf(z,ahat,bhat),'nparams',2);
if h3==0
disp('該數據源服從均勻分布。')
else
disp('該數據源不服從均勻分布。')
end
[phat,pci] = raylfit(x,alpha)
h4 = chi2gof(x,'cdf',@(z)raylcdf(z,phat),'nparams',1);
if h4==0
disp('該數據源服從rayleigh分布。')
else
disp('該數據源不服從rayleigh分布。')
end
mu=expfit(x,alpha);
h5= chi2gof(x,'cdf',@(z)gamcdf(z,mu),'nparams',1);
if h5==0
disp('該數據源服從指數分布。')
else
disp('該數據源不服從指數分布。')
end
phat=gamfit(x,alpha);
h6= chi2gof(x,'cdf',@(z)gamcdf(z,phat(1),phat(2)),'nparams',2);
if h6==0
disp('該數據源服從γ分布。')
else
disp('該數據源不服從γ分布。')
end
之后,我用各種隨機數生成命令分別生成了相應分布類型的隨機數數組
norm=normrnd(2,5,[1 1000]);
beta=betarnd(2,6,[1 1000]);
logn=lognrnd(3,6,[1 1000]);
exp=exprnd(10,[1 1000]);
poiss=poissrnd(8,[1 1000]);
rayl=raylrnd(30,[1 1000]);
gam=gamrnd(6,9,[1 1000]);
unif=unifrnd(1,100,[1 1000]);
再利用函數p_chi2gof()來檢驗這些數組相應的分布形式
出現了幾個問題:
檢驗指數分布隨機數據的結果為:該數據源不服從指數分布,該數據源服從γ分布。
檢驗泊松分布隨機數據的結果為:該數據源不服從泊松分布(且不服從任意其他分布)
檢驗瑞利分布隨機數據的結果為:該數據源服從rayleigh分布,該數據源服從γ分布。
會出現這樣的問題回事什么原因?我在程序上有哪些不正確的地方嗎?
謝謝^_^
總結
以上是生活随笔為你收集整理的matlab三角定位分析程序,Matlab chi2gof 分布分析程序求教的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: bsdiff php,Apk差分升级An
- 下一篇: php怎么新建页面,whmcs创建自定义