R中指数分布的极大似然估计

R中指数分布的极大似然估计,r,exponential,mle,R,Exponential,Mle,如果我们从指数分布生成一个随机向量: exp.seq = rexp(1000, rate=0.10) # mean = 10 现在我们想使用先前生成的向量exp.seq重新估计lambda 因此,我们定义了对数似然函数: fn <- function(lambda){ length(exp.seq)*log(lambda)-lambda*sum(exp.seq) } 我对正态分布使用了同样的方法,效果很好。那么这里的错误在哪里呢? 我使用我自己的指数分布定义,因为我以后需要更改它。默认

如果我们从指数分布生成一个随机向量:

exp.seq = rexp(1000, rate=0.10) # mean = 10
现在我们想使用先前生成的向量
exp.seq
重新估计lambda
因此,我们定义了对数似然函数:

fn <- function(lambda){
length(exp.seq)*log(lambda)-lambda*sum(exp.seq)
}
我对正态分布使用了同样的方法,效果很好。那么这里的错误在哪里呢?

我使用我自己的指数分布定义,因为我以后需要更改它。

默认情况下,
optim
nlm
都会最小化。你想要最大化。或者,您也可以翻转函数的符号。@MrFlick确实这就是问题所在。谢谢你的快速回复。
optim(lambda, fn) # I get here 3.877233e-67
nlm(fn, lambda) # I get here 9e-07