等效于 MATLAB 函数 gaminv()
equivalent of MATLAB function gaminv()
我一直在努力寻找与 MATLAB 的 gaminv
函数等效的 R。据我所知,R 中没有 packages/functions 完全符合 `gaminv 的功能。我也不确定如何自己编写代码。任何 guidance/advice 将不胜感激。
您可以尝试从 inverse cumulative function 开始,如果这不是您要找的,我建议您先研究累积反演的整个理论基础,并尝试将其应用到非函数式语言中, 然后将其集成到 R 中,或者简单地阅读原始 MatLab 函数中所写的内容并尝试在 R
中重现
给我们一个 link to the documentation:
会有所帮助
x = gaminv(p,a,b) returns the icdf [inverse cumulative distribution function] of the gamma distribution with shape parameter a and the scale parameter b, evaluated at the values in p.
逆累积分布函数也称为quantile function:这些函数在R中表示为q<distname>
。特别地,qgamma
是Gamma分布的分位数函数: ?qgamma
中的定义指出
qgamma(p, shape, rate = 1, scale = 1/rate, lower.tail = TRUE,
log.p = FALSE)
特别注意,R 函数默认使用速率参数化:如果您指定 qgamma(0.5, shape=2, 2)
,您将获得速率为 2(比例为 1/2)的函数值。如果你想要比例参数化,你需要 qgamma(0.5, shape=2, scale=2)
.
我已经使用任意示例确认 gaminv(0.5,2,2)
(在 Octave 中,因为我没有 Matlab)给出与 qgamma(0.5,2,scale=2)
相同的答案。
我一直在努力寻找与 MATLAB 的 gaminv
函数等效的 R。据我所知,R 中没有 packages/functions 完全符合 `gaminv 的功能。我也不确定如何自己编写代码。任何 guidance/advice 将不胜感激。
您可以尝试从 inverse cumulative function 开始,如果这不是您要找的,我建议您先研究累积反演的整个理论基础,并尝试将其应用到非函数式语言中, 然后将其集成到 R 中,或者简单地阅读原始 MatLab 函数中所写的内容并尝试在 R
中重现给我们一个 link to the documentation:
会有所帮助x = gaminv(p,a,b) returns the icdf [inverse cumulative distribution function] of the gamma distribution with shape parameter a and the scale parameter b, evaluated at the values in p.
逆累积分布函数也称为quantile function:这些函数在R中表示为q<distname>
。特别地,qgamma
是Gamma分布的分位数函数: ?qgamma
中的定义指出
qgamma(p, shape, rate = 1, scale = 1/rate, lower.tail = TRUE, log.p = FALSE)
特别注意,R 函数默认使用速率参数化:如果您指定 qgamma(0.5, shape=2, 2)
,您将获得速率为 2(比例为 1/2)的函数值。如果你想要比例参数化,你需要 qgamma(0.5, shape=2, scale=2)
.
我已经使用任意示例确认 gaminv(0.5,2,2)
(在 Octave 中,因为我没有 Matlab)给出与 qgamma(0.5,2,scale=2)
相同的答案。