如何使用插入符号(maxit)为地球传递glm控制参数

时间:2019-03-17 18:32:50

标签: r r-caret glm spline

在为earth模型拟合glm时,可以将参数传递给glm调用。例如:

mars_fit <- earth(formula = response ~ x1 + x2, data = sim_dat,
                      glm = list(family=binomial, control = list(maxit = 50)))

使用caret的样子

fit_control <- trainControl(method = "cv", number = 10)
mars_grid <- expand.grid(degree=1:2, nprune=2:10)
mars_fit <- train(factor(response)~x1+x2, method='earth', trControl = fit_control, 
                  data=sim_dat, tuneGrid=mars_grid, 
                  glm = list(control = list(maxit = 50)))

但未传递glm列表。有什么建议吗?

编辑1: 阅读https://github.com/topepo/caret/issues/554 caret的作者说,它要么陷在...中,要么应该在调整网格中传递。当通过调整网格传递时,由于glm是列表,train抱怨degreenprune不属于该方法,这是不正确的。 编辑2: 打开https://github.com/topepo/caret/issues/1018

1 个答案:

答案 0 :(得分:0)