Оценить параметры обратного гамма-распределения по заданным квантилям - PullRequest
1 голос
/ 24 февраля 2020

Я пытаюсь оценить параметры обратного гамма-распределения по его квантилям 0,025 и 0,975.

В настоящее время я нашел rriskDistributions::get.gamma.par, который дает мне оценку параметров по квантилям гаммы. распределение. Однако я не могу понять взаимосвязь между квантилями Гамм и обратными Гаммами.

Как мне продолжить, или есть пакет, который может сделать это для меня?

1 Ответ

2 голосов
/ 24 февраля 2020

Вы можете написать свою собственную целевую функцию, которая вычисляет квадратичное отклонение между вычисленными квантилями для определенного набора параметров обратной гаммы и целевых квантилей:

library(invgamma)
objfun <- function(p,target) {
    qq <- qinvgamma(c(0.025,0.975),shape=p[1],rate=p[2])
    sum((qq-target)^2)
}

Затем используйте optim(), чтобы минимизировать:

## example
tt <- qinvgamma(c(0.025,0.975), shape=2,rate=2)
optim(par=c(1,4),  ## starting values; must be sensible
      fn=objfun,
      target=tt)
$par
[1] 1.980279 1.948050

$value
[1] 9.0741e-05

$counts
function gradient 
      61       NA 

$convergence
[1] 0

$message
NULL
...