我设置了以下函数,以使用gamma分布来模拟条目列表中的值。但是,当我使用MBBEFD发行版时,会产生错误消息,提示错误:“错误:期望单个值:[extent = 3]”
以下工作正常:
library(actuar)
library(mbbefd)
set.seed(1)
x <- 10e3
Data.1 <- data.frame(
freq = c(1, 2, 3),
shape = c(1, 9, 7.5),
scale = c(2, 0.5, 1))
compdist.1 <- lapply(Data.1$freq, function(k) rcomppois(x, k, rgamma(Data.1$scale, Data.1$shape), SIMPLIFY = FALSE))
但是,即使发行形式看起来还行,这似乎也不起作用
Data.2 <- data.frame(
freq = c(1, 2, 3),
gparam = c(50, 30, 10),
bparam = c(0.04, 0.05, 0.06))
plotdist(rMBBEFD(x,Data.2$gparam[1],Data.2$gparam[1]))
plotdist(rMBBEFD(x,Data.2$gparam[2],Data.2$gparam[3]))
plotdist(rMBBEFD(x,Data.2$gparam[3],Data.2$gparam[3]))
compdist.2 <- lapply(Data.2$freq, function(k) rcomppois(x, k, rMBBEFD(Data.2$gparam, Data.2$bparam), SIMPLIFY = FALSE))
我想知道是否可以更改lapply语句的形式以使其工作。
谢谢。