0

我有一个 PDF,我从逆方法得到它。以及来自 x<-rnorm(20,0,1) 的 x。这是来自指数并行的模型,用于协变量的生存分析,其中我让 lambda= b0+b1*x

PDF = 2 * (b0+b1*x) * exp(-(b0+b1*x)*t) * (1-exp(-(b0+b1*x)*t))

问题是当我执行 maxLik 函数时,maxLik 中的标准误差值返回 NA 值。我将 z1 指定为对数似然函数。

#Likelihood
library(maxLik)
LLF <- function(para){
set.seed(1)

b0 = para[1]
b1 = para[2]

#n = 1

z1 = (n*log(2)) + (n*log(b0+b1*xsum)) - ((b0+b1*xsum)*tsum) + (n*log(1-exp((-(b0 + b1*xsum)*tsum))))

return(z1)
}

mle <- maxLik(LLF, start = c(2,4))
summary(mle)

Maximum Likelihood estimation
Newton-Raphson maximisation, 3 iterations
Return code 1: gradient close to zero
Log-Likelihood: -22.7055 
2  free parameters
Estimates:
     Estimate Std. error t value Pr(> t)
[1,]    1.986         NA      NA      NA
[2,]    3.986         NA      NA      NA

先感谢您。

4

1 回答 1

0

请参见返回码 1:梯度接近于零。标准。错误可能是使用梯度/Hessian 计算的。如果这些不正确,那么这可能是罪魁祸首。

尝试使用参数 method='Nelder-Mead' 运行您的函数,看看这是否能缓解问题。如果是这样,您可以使用此方法,或提供您自己的 Jacobian 和 Hessian 函数。

于 2020-12-31T12:01:56.453 回答