我尝试使用 R 中的 fitdist 函数以最大似然法将数据拟合到三个不同的分布以比较它们。 Lognormal 和 Weibull 工作正常,但我正在为逆高斯而苦苦挣扎。 我需要指定起始值,但是当我这样做时,我收到一条错误消息。
fw<-fitdist(claims,"weibull") WORKS
fln<-fitdist(claims,"lnorm") WORKS
fig<-fitdist(claims,"invgauss",start=list(mu=0,lambda=1)) DOES NOT WORK
错误:“当输入的长度为零时,pinvgauss 函数应返回一个长度为零的向量并且不会引发错误”
我的代码有什么问题?
最佳答案
我正在处理一个类似的问题,发现问题出在我如何标记我的起始值。我正在使用的 actuar 库需要在值上标记“mean”和“shape”。以下代码为我提供了解决方案:
library(actuar)
library(fitdistrplus)
fig <- fitdist(claims, "invgauss", start = list(mean = 5, shape = 1))
关于r - 将逆高斯分布拟合到 R 中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52585093/