2

我正在尝试拟合广义加性逻辑回归模型,但出现了一个奇怪的错误:

gam_object = gam(event ~ s(time) + ., data = lapse_train, family = "binomial") 

Error in terms.formula(gf, specials = c("s", "te", "ti", "t2")) : '.' in formula and no 'data' argument

为什么它会告诉我这里没有数据参数,而显然有?

4

1 回答 1

5

请注意,错误消息来自terms.formula()函数内部调用的调用。此函数看不到data=您传递给的参数gam()

如果您查看?formula.gam帮助页面,您会看到

提供给 gam 的公式与提供给 glm 的公式完全相同,只是可以将平滑项 s、te、ti 和 t2 添加到右侧(并且 . 在 gam 公式中不受支持)。

gam您可以在通过标准terms()函数将公式传递给之前扩展公式。例如

gam_object <- gam(terms(event ~ s(time) + ., data=lapse_train), 
    data = lapse_train, family = "binomial") 

您没有提供任何可重现的示例,因此无法验证这是否适合您。

于 2015-06-03T18:32:20.587 回答