Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 求广义正态分布的分位数_Matlab_Quantile - Fatal编程技术网

Matlab 求广义正态分布的分位数

Matlab 求广义正态分布的分位数,matlab,quantile,Matlab,Quantile,我正在写一个寻找广义正态分布分位数的Matlab代码 x ~ GN(0, alfa, beta) : p(x; 0, alfa, beta) = (beta/(2*alfa*gamma(1/beta))) * exp(-(abs(x)/alfa).^beta ) 根据中所示的分位数公式, 对于分位数C,我通过 z_c = sign(C-0.5).*gaminv(2*abs(C-0.5), 1./beta, 1./(alfa.^beta)).^(1./beta)+0 为了验证上述方程,我指定a

我正在写一个寻找广义正态分布分位数的Matlab代码

x ~ GN(0, alfa, beta) :
p(x; 0, alfa, beta) = (beta/(2*alfa*gamma(1/beta))) * exp(-(abs(x)/alfa).^beta )
根据中所示的分位数公式, 对于分位数C,我通过

z_c = sign(C-0.5).*gaminv(2*abs(C-0.5), 1./beta, 1./(alfa.^beta)).^(1./beta)+0
为了验证上述方程,我指定alfa=sqrt(2)和beta=2,使广义正态成为正态分布。但是当我计算的时候

>> C=0.05; beta =2; alfa =sqrt(2);
>> z_c = sign(C-0.5).*gaminv(2*abs(C-0.5), 1./beta, 1./(alfa.^beta)).^(1./beta)
z_c =
   -0.8224
我认为结果应该与正常CDF的倒数的分位数完全相同,平均μ=0,标准偏差σ=1

>> norminv(C)
ans =
   -1.6449

有人能帮我指出上面的错误吗?

这个
alfa=sqrt(2)
来自哪里?你已经解出了阿尔法^2/2=1?@obchardon是的,我给阿尔法赋值为sqrt(2)和beta=2,这样p(x;0,alfa,beta)=(beta/(2*alfa*gamma(1/beta))*exp(-(abs(x)/alfa)。^beta)变成了N(0,1),你可能想看看