平滑样条回归的gam函数错误

Error in gam function of smoothing spline regression

我正在尝试 运行 使用 gam 对 y 作为数据集中变量 a 和 b 的函数进行平滑样条回归。但是当我 运行 以下代码时,出现以下错误。

> autogam_axb <- gam(data$y~s(data$a,data$b))
Error in eval(expr, envir, enclos) : object 'a' not found

知道我做错了什么吗?

您需要将模型规范与数据位置分开。前者通过公式指定,而 data 参数用于告诉 gam 关于后者:

autogam_axb <- gam(y ~ s(a, b), data = data)

这有两个目的:

  1. 型号规格清晰,不乱data$,更容易看出装的是什么,
  2. 您明确指出在何处可以找到拟合模型所需的变量,但您在函数调用的一个地方执行此操作。