我发现truncdist
包具有计算任意截断分布的均值和方差的函数。但是,我发现在实践中,由于使用了数值积分(在下面的期望值函数中调用integrate()
),这个包的函数不适用于重尾分布:
extrunc <- function(spec, a = -Inf, b = Inf,...)
{
f <- function(x) x * dtrunc(x, spec, a = a, b = b, ...)
return(integrate(f, lower = a, upper = b)$value)
}
特别是我想计算左和/或右截断对数正态分布的均值和方差,但最终会扩展到其他截断的重尾分布,如gamma,pareto等。
R中是否有任何现有资源?我的互联网搜索基本上没有结果。所以,在我前往StatsExchange并开始为此创建自己的R代码之前,我想我会问。