我的问题是我有一组数据要拟合分布,然后一旦找到分布,就对其运行蒙特卡罗模拟以传播找到的分布。
我的第一段代码是:
require(fitdistrplus)
example1<-c(29,23,29,25,26,29,29,27,25,25,25,26,28,25,29,28,28,26,28,25,29,26,30)
f1<-fitdist(example1,rgamma,method="mle")
如果我然后使用命令
print(f1)
它告诉我形状是 204.00,伽马分布的比率是 7.568
(请注意,我现在拟合分布的数字是任意的,我通常会有数百个观察值来拟合分布)。
我现在需要帮助的地方是当我使用包中的代码mc2d
来传播这个分布时,如下所示:
require(mc2d)
ndunc(1000)
fitted<-mcstoc(rgamma, type="U", shape=204.00, rate=7.569)
目前,我必须从“fitdist”命令的先前“打印”中手动输入形状和评分。
我的问题是,有没有办法让 mcstoc 命令自动从 fitdist 命令中获取形状和速率,这样我就不必手动中断代码?或者,如果 fitdistrplus 包和 mc2d 包无法实现,那么是否有另一个包可以为我做到这一点?
提前谢谢了!