R 用插入符号验证poisson-GAM模型

R 用插入符号验证poisson-GAM模型,r,r-caret,gam,mgcv,R,R Caret,Gam,Mgcv,我正在尝试使用R中的“插入符号”包对广义相加模型(GAM)进行交叉验证。我可以让它对GLM起作用,并且认为对GAM运行相同的操作应该很简单,但无法使其起作用,请参见下文: dat <- data.frame(label=round(rpois(100,20)),v1=rnorm(100),v2=rnorm(100)) tc <- trainControl("cv",10,savePred=T) (fit <- train(label~.,data=dat,method="glm

我正在尝试使用R中的“插入符号”包对广义相加模型(GAM)进行交叉验证。我可以让它对GLM起作用,并且认为对GAM运行相同的操作应该很简单,但无法使其起作用,请参见下文:

dat <- data.frame(label=round(rpois(100,20)),v1=rnorm(100),v2=rnorm(100))
tc <- trainControl("cv",10,savePred=T)
(fit <- train(label~.,data=dat,method="glm",trControl=tc,family=poisson(link = "log")))

(fit1 <- train(label~.,data=dat,method="gam",trControl=tc,family=poisson(link = "log")))
似乎不知何故,家族参数没有以与glm()中相同的方式传递给gam()。在彻底搜索网络之后,我还没有找到任何这样的工作示例。任何帮助都将不胜感激


尼克

进一步审查后,似乎在插入符号中使用任何基于GAM的模型类型都不明确支持泊松结果。I(至少在文档中,如果不明确支持这些类型的模型的话)在Github上的插入符号代码库中。

此功能已签入并将在下一个CRAN中version@Nicolas:由于topepo(可能是软件包作者)没有选择将此作为答案发布在此处,而是在您引用的页面上进行了回答,我建议在你的功能要求-答案上打勾。(我刚刚用当前版本的插入符号测试了您的示例,运行起来没有困难。)
20: In eval(expr, envir, enclos) :
  model fit failed for Fold10: select=FALSE, method=GCV.Cp Error in mgcv:::gam(modForm, data = dat, family = dist, select = param$select,  : 
  formal argument "family" matched by multiple actual arguments