【问题标题】:How to plot the fitting curves in a GAM regression in R?如何在 R 的 GAM 回归中绘制拟合曲线?
【发布时间】:2019-12-29 11:48:54
【问题描述】:

我正在尝试如下拟合 GAM 模型:

model <- gam(`output` ~ s(`var 1`) + s(`var 2`), data = mydata)

其中mydatadata.frame,其中包含我需要的列数据:outputvar 1var 2

当我运行命令时,我收到以下警告:

Warning message:
In model.matrix.default(mt, mf, contrasts) :
  non-list contrasts argument ignored

我不知道这是什么意思。但是我可以看到该模型适合 summary(model) 返回的东西。

现在我想绘制拟合曲线:

  • output 反对 var 1
  • output 反对 var 2

怎么做?


尝试我

我已经尝试过:

plot(model)

但我收到此错误:

Error in parse(text = evars) : <text>:1:8: unexpected symbol
1: var 1

【问题讨论】:

  • 您确定出错的不是gam 模型而不是绘图方法吗? (例如 mtcars$var 1= mtcars$wt ; gam(mpg ~ s(var 1), data=mtcars))。但我认为,如果您使用 r 更容易解析的名称,您会发现它更容易——请参阅?make.names
  • 请您发布数据,或数据的链接?

标签: r regression gam


【解决方案1】:

问题出在名称上。 lm 接受用反引号括起来的名称语法。 gam 没有。最后,我更改了数据框以允许这样做:

model <- gam(y ~ s(x) + s(w), data = mydata)

然后绘图就成功了。

【讨论】:

    猜你喜欢
    • 2019-12-06
    • 2016-08-09
    • 1970-01-01
    • 2014-06-13
    • 2018-10-13
    • 1970-01-01
    相关资源
    最近更新 更多