等同于MATLAB函数gaminv()

问题描述 投票:1回答:2

我一直在努力寻找等效于MATLAB gaminv函数的R。据我所知,R中没有任何软件包/函数可以完全完成`gaminv的工作。我也不知道如何自己编写代码。任何指导/建议将不胜感激。

r matlab statistics probability gamma-distribution
2个回答
3
投票

给我们一个link to the documentation将有帮助:

x = gaminv(p,a,b)返回伽玛分布的icdf [逆累积分布函数],形状参数为a,比例参数为b,以p中的值求值。

逆累积分布函数也称为quantile function:这些函数在R中表示为q<distname>。特别地,qgamma是伽马分布的分位数函数:?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)(在八度中,因为我没有Matlab,所以给出的答案与qgamma(0.5,2,scale=2)相同。


0
投票

您可以尝试从inverse cumulative function开始,如果这不是您想要的,我建议研究累积求逆的整个理论基础,并尝试首先将其应用于非功能性语言,然后将其集成到R,或者只是阅读原始MatLab函数中编写的内容,然后尝试在R]中重现

© www.soinside.com 2019 - 2024. All rights reserved.