0

我注意到如果我使用 family cumulativein vglmmaxit参数 invglm.control将被忽略。见以下代码

library(VGAM)
pneumo <- transform(pneumo, let = log(exposure.time))
(fit <- vglm(cbind(normal, mild, severe) ~ let,
             family=cumulative(parallel = TRUE, reverse = TRUE), 
             data=pneumo, control=vglm.control(maxit=1)))
fit@iter # output is 4, even though I set control=vglm.control(maxit=1)

最后一行给出了用于拟合的迭代次数。这里的输出是 4,即使我设置了 maxit=1。有人知道如何解决这个问题吗?

如果我使用不同的族(例如poissonff族),则maxit在拟合过程中将考虑该参数,请参阅:

(fit2 <- vglm(normal ~ let, family=poissonff, data=pneumo, 
             control=vglm.control(maxit=1)))
fit2@iter # output is 1, because I set control=vglm.control(maxit=1)

我希望有人能帮助我。

4

1 回答 1

0

只为那些想知道的人:例如,您必须在 vglm-function 中设置 maxit 参数而不使用 control 参数

library(VGAM)
pneumo <- transform(pneumo, let = log(exposure.time))
(fit <- vglm(cbind(normal, mild, severe) ~ let,
             family=cumulative(parallel = TRUE, reverse = TRUE), 
             data=pneumo, maxit=1))
fit@iter # output is 1
于 2013-07-16T11:08:38.897 回答