估计 Weibull 密度参数(错误:“...'vmmin' 中的初始值不是有限的”)
Posted
技术标签:
【中文标题】估计 Weibull 密度参数(错误:“...\'vmmin\' 中的初始值不是有限的”)【英文标题】:Estimating Weibull density parameters (error: "...initial value in 'vmmin' is not finite")估计 Weibull 密度参数(错误:“...'vmmin' 中的初始值不是有限的”) 【发布时间】:2011-06-07 02:17:07 【问题描述】:我正在尝试估计数据集的形状和规模。 我使用了两种不同的方法,但我都收到了一条错误消息:
首先,我尝试使用survey
包:
survreg(Surv(all.ws)~1, dist="weibull")
我收到错误消息:
此分布的无效生存时间
其次,我尝试使用fitdistr()
函数:
fitdistr(all.ws, densfun=dweibull, start=list(scale=1, shape=2))
我收到一条错误消息:
优化错误(x=c(2.2, 2.1,1.9....: 'vmmin' 中的初始值不是有限的
我在做什么有什么问题?
【问题讨论】:
试试crossvalidated.com。 【参考方案1】:谷歌搜索“fitdistr Weibull Error”显示这个确切的问题在一年前在 R-help 邮件列表中讨论过:http://r.789695.n4.nabble.com/Problems-with-fitdistr-td1334772.html
来自该链接的一些观点:
数据中的零会导致问题
使用 lmom 包中的 pelwei() 函数
【讨论】:
显然是因为它需要一个日志,但不确定。 @Prasad 任何机会你都可以更新显示如何使用pelwei函数来解决这个问题的答案,因为我自己也有同样的困难。它返回 3x 参数,而我只寻找 2x(Weibull 的形状和比例)。谢谢!【参考方案2】:在使用带有 Beta 分布的 fitdistr() 时,我遇到了类似的问题。在这种情况下,数据中的 ones 和 zeros 都会产生此错误。
另外我发现当在 fitdistr() 调用中使用 limit 参数时,会产生一个不同的错误: 例如(其中 x 是包含 1.0 或 0 的样本向量):
fitdistr(x, "beta", list(shape1 = 1, shape2 = 0.2),lower=0.001)
`Error in stats::optim: L-BFGS-B needs finite values of 'fn'`
【讨论】:
以上是关于估计 Weibull 密度参数(错误:“...'vmmin' 中的初始值不是有限的”)的主要内容,如果未能解决你的问题,请参考以下文章
R 中的 Weibull 参数估计,同时考虑 X(时间)和 Y(累积观察)