在R中找到混合模型的MLE

时间:2018-09-20 05:52:49

标签: r mle

我正在尝试使用R查找指数混合模型的MLE。 对数似然为

enter image description here

据我了解,首先,我定义了对数似然函数,

LL <- function (p, alpha) {
    R = log(p) + log(alpha) - alpha * dat$dat0[del == 1] + 
        log(1 - p + p * exp(-alpha * dat$dat0[del == 0])) - sum(log(R))}

其中datdat0(值x)和del(指标因子)的数据帧

然后我应用了mle函数:

mle(
    LL, 
    start = list(p = 0.2, alpha = 0.2), 
    method = "L-BFGS-B", 
    lower = c(-Inf, 0), upper = c(Inf, Inf))

但是,发生错误的原因是

  

optim中的错误(开始,f,方法=方法,粗麻布= TRUE,...):
    L-BFGS-B需要'fn'的有限值
  另外:警告消息:
  1:在log(p)+ log(alpha)-alpha * dat $ dat [del == 1] + log(1-p +:
    较长的对象长度不是较短的对象长度的倍数
  2:在log(R)中:产生了NaNs

我猜这可能是由于错误选择初始参数导致的。

有人可以给我一些想法以获得MLE吗?

谢谢。

0 个答案:

没有答案