D函数返回零

时间:2019-05-13 13:38:43

标签: r maximize log-likelihood

我正在尝试区分多元正态分布的对数似然函数,

NLLmvnorm <- function(data, mu, sigma) {
  a <- qr(sigma)
  logdet <- sum(log(abs(diag(a$qr))))
  sigma.inv <- fast.ginv(sigma)
  -0.5 * (logdet + t(data-mu) %*% sigma.inv %*% (data-mu))
}

使用D,我对musigma进行区分,并将每个结果存储在单独的变量中:

du <- D(expression(NLLmvnorm),"mu")
ds <- D(expression(NLLmvnorm),"sigma")

但是,这两个结果都返回0。我是在做不正确的事情,还是在误解D的作用?如果有帮助,我的目标是使用du找到dssolve的根,以找到最大的可能性。

0 个答案:

没有答案