R中的函数优化(L-BFGS-B需要'fn'的有限值)

时间:2015-11-13 03:12:55

标签: r

当我运行下面的代码时,有时没有问题,有时我会收到错误:

Error in stats::optim(x = c(16.0647119767221, 14.2739364736729, 37.6134235608159,  : L-BFGS-B needs finite values of 'fn'

我明白这意味着我在某处生成一个大于.Machine$double.xmax(我机器上的1.797693e+308)的值,但我无法弄清楚我必须限制哪个参数来防止这个。有什么建议吗?

library(MASS)
K <- c(109.106,121,10,38,61,13,45,40,12,33,9,18,44,24,23,7,85)
weib  <-  fitdistr(K,densfun=dweibull,start=list(scale=20,shape=1))

# Bootstrapping the pointwise confidence intervals 
set.seed(123)
rw.small <- rweibull(100,scale=weib$estimate[1], shape=weib$estimate[2])
xs <- seq(0, round(max(K)+25,-1), length=500)
boot.cdf <- sapply(1:1000,function(i){
  xi <- sample(rw.small, size=length(rw.small), replace=TRUE)
  MLE.est <- suppressWarnings(fitdistr(xi, densfun="weibull", lower = 0))  
  pweibull(xs, shape=as.numeric(MLE.est$estimate[1]), scale=as.numeric(MLE.est$estimate[2]))
})

0 个答案:

没有答案