我在R脚本中遇到了关于fitdist的以下问题
<simpleError in optim(par = vstart, fn = fnobj, fix.arg = fix.arg, obs = data, gr = gradient, ddistnam = ddistname, hessian = TRUE, method = meth, lower = lower, upper = upper, ...): non-finite value supplied by optim>
Error in fitdist(rate2, "beta", method = "mle") : the function mle failed to estimate the parameters, with the error code 100
经过进一步分析,我尝试使用示例数据来测试脚本,如下所示 示例:
testdata <- meth1(0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5, 0.5, 0.5, 0.5, 0.5)
fitdistmethod <- fitdist(testdata, 'beta', method='mle')
我遇到了与上述相同的错误,但是将testdata中的一个值更改为0.4之后,我没有遇到任何错误。
testdata <- meth1(0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5, 0.5, 0.5, 0.4, 0.5)
fitdistmethod <- fitdist(testdata, 'beta', method='mle')
这是否意味着需要传递给fitdist的数据应至少包含一个不同的值?