第一次使用R语言做GAM的interaction,网上找到的资料很少,所以对常见的报错进行记录。
-
Error in smoothCon(split$smooth.spec[[i]], data, knots, absorb.cons, scale.penalty = scale.penalty, : Can't find by variable
具体的报错截图如下:
GAM模型代码:
gam_mod <- gam(y ~ s(x, by = group))
这个问题很好解决,我参考了网上的一篇博客,找到了解决方案,只需要对用于分类的数据进行一个预处理即可
dat$group <- factor(dat$group)
在此感谢网友的博客给我提供了解决办法,如果需要了解更多可以访问博客原文:
How to solve common problems with GAMs | R-bloggers
-
Error in smooth.construct.tp.smooth.spec(object, dk$data, dk$knots) :
NA/NaN/Inf in foreign function call (arg 1)
具体报错截图如下:
这个问题参考网上的解决方案,“发生此错误的原因之一可能是您数据框中定义的变量与其实际数据类型不同。 例如,您为"日期" vaiable定义"字符"。”仔细检查数据是否存在NA情况或者不是数字的情况,处理好数据后再跑代码即可。