在R中实现一个计算负对数似然的函数

时间:2015-01-14 14:59:28

标签: r statistics

作业。

我是R和统计学的新手。我有一个问题,应该在哪里实现一个用户定义的函数,该函数将自由度(“df”)和数据集作为参数并返回减去对数似然。 据推测,数据是以“df”自由度分布的卡方。

我知道负对数似然被定义为:

Minus-log-likelihood

我只会将此函数应用于同一数据集,因此我的函数可以具有签名:loglike< - function(df)

编辑:我按照用户阴影建议并尝试编写函数:

 loglike <- function(df) {
 value <- sum(-log(dchisq(data, df)))
 return(value)
 }

这可能是对的吗?

1 个答案:

答案 0 :(得分:1)

对数可能性:

   minusLogLike <- function(df, data) -sum(dchisq(data, df, log=TRUE))

请注意log=TRUE的使用。 MLE估算的一个小例子如下:

dat <- rchisq(100,5)
optim(2, minusLogLike, lower=1, upper=10, method="Brent", data=dat)