Я пытаюсь найти MLE дистрибутива, pdf которого указан в коде как «смесь».Ниже приведен код, который выдает ошибку «Ошибка в optim (start, f, method = method, hessian = TRUE, ...): L-BFGS-B нужны конечные значения 'fn'"
«заявки» - это набор данных, который я использую.Я пробовал один и тот же код только с первыми двумя значениями «заявок» и столкнулся с той же проблемой, поэтому для воспроизводимого примера первые два значения - 1536.77007 и 1946.92409.
Ограничения на параметры распределения таковы, что 0 <.p. <1 и a> 0 и b> 0, следовательно, нижняя и верхняя границы в функции MLE.Буду признателен за любую оказанную помощь.
#create mixture of two exponential distribution
mixture<-function(x,p,a,b){
d<-p*a*exp(-a*x)+(1-p)*b*exp(-b*x)
d
}
#find MLE of mixture distribution
LL <- function(p,a,b) {
X = mixture(claims,p,a,b)
#
-sum(log(X))
}
mle(LL, start = list(p=0.5,a=1/100,b=1/100),method = "L-BFGS-B", lower=c(0,0,0), upper=c(1,Inf,Inf))
edit: Не совсем уверен, почему dput (), но в любом случае,
#first two values of claims put into dput() (the actual values are above)
dput(claims[1:2])
c(307522.103, 195633.5205)