我想使用 MATLAB 的chi2gof
来执行卡方拟合优度检验。我的问题是我的假设(即理论)分布不是 MATLAB 中的标准内置概率分布之一。我想要的分布的具体形式是:
p = x^a*exp(-b*x^2)
其中a
和b
是常量。一定有一种方法可以将chi2gof
用于任意 PDF?我已经做了详尽的谷歌搜索,但空手而归。
您可以指定函数的句柄,该句柄采用单个参数以这种方式chi2gof
:
a = ...
b = ...
c = ...
F = @(x)a*exp(-b*x-c*x.^2); % Technically this is an anonymous function
[H,P,STATS] = chi2gof(data,'cdf',F)
或在特殊情况下:
a = ...
b = ...
c = ...
F = @(x,a,b,c)a*exp(-b*x-c*x.^2);
[H,P,STATS] = chi2gof(data,'cdf',{F,a,b,c})
其最后一行相当于
[H,P,STATS] = chi2gof(data,'cdf',@(x)F(x,a,b,c))
如果参数a
、b
和c
是估计的(例如,使用一些拟合过程),那么你应该指定要chi2gof
的估计参数的数量。在这种情况下:
[H,P, STATS] = chi2gof(data,'cdf',F,'nparams',3)
请阅读文档以了解其他选项。