【问题标题】:fitting an inverse gaussian distribution to data in R将逆高斯分布拟合到 R 中的数据
【发布时间】:2019-03-06 04:59:42
【问题描述】:

我尝试使用 R 中的 fitdist 函数通过最大似然将数据拟合到三个不同的分布以比较它们。对数正态和 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 函数应在输入长度为零且不引发错误时返回零长度向量'

我的代码有什么问题?

【问题讨论】:

  • 你试过其他的起始值吗?我不认为 mu=0 有意义。
  • invgauss 中两个参数都必须大于零。维基链接:en.wikipedia.org/wiki/Inverse_Gaussian_distribution
  • 我明白了。但即使我输入高于 0 的值,我也会得到同样的错误。

标签: r gaussian mle


【解决方案1】:

我正在处理类似的问题,发现问题在于我如何标记起始值。我正在使用的精算库需要值上的标签“均值”和“形状”。以下代码为我提供了解决方案:

library(actuar)
library(fitdistrplus)
fig <- fitdist(claims, "invgauss", start = list(mean = 5, shape = 1))

【讨论】:

    猜你喜欢
    • 2015-10-10
    • 1970-01-01
    • 2013-05-14
    • 2019-06-17
    • 2019-12-28
    • 2015-01-29
    • 2023-03-19
    • 1970-01-01
    • 2016-11-10
    相关资源
    最近更新 更多