我有以下数据
dat<-c(16.254884, 14.077510, 12.851675, 19.152597, 11.511230,
16.122911, 16.099962, 9.670949, 12.523661, 15.257432, 13.603848,
14.118873, 12.632340, 15.413753, 5.426383, 11.369880, 12.895920,
13.635134, 15.118388,13.154107, 8.913164, 17.302810, 14.968054,
16.200151, 16.068944, 18.571952, 15.247535, 15.018281)
我正在使用此代码来查找模式:
Mode_fc <- function(x) {
ux <- unique(x)
ux[which.max(tabulate(match(x, ux)))]
}
使用MyParam
,我可以获得最小值、最大值和模式
MyParam <- c(min= min(dat), max= max(dat), mode= Mode_fc(dat))
当我将这些值输入到下面的代码中时fitdist
,按预期工作
fitdist(dat, "triang", start = list(min=5.4, max=19.2, mode=16.3))
但是,当我尝试在 MyParam 中阅读时,会出现各种错误
fitdist(dat, "triang",
start = list(min=MyParam[[1]], max=MyParam[[2]], mode=MyParam[[3]]))
我知道问题出在optim()
,但我无法弄清楚如何解决这个问题。任何建议表示赞赏!