首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用gam函数拟合光滑样条

用gam函数拟合光滑样条
EN

Stack Overflow用户
提问于 2016-07-19 05:45:22
回答 1查看 1.6K关注 0票数 0

我想用gam函数拟合光滑样条。试图绘制拟合值会导致错误-object$nsdf?我想知道这是否是必需的输入,如果是的话,df指的是什么?如何修复这段代码。

代码语言:javascript
复制
gam.fit=gam(y~s(disp,6)+s(hp,5)+s(wt,5), data=train.dat)
mean((test.dat$y - gam.pred)^2)  # 0.0002282536
plot(gam.fit, se=TRUE, col="blue",main="10.3f.gam")
# Error in 1:object$nsdf : argument of length 0

谢谢。真诚的玛丽·A·马里恩

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-19 07:30:38

您的gam()调用语法:

代码语言:javascript
复制
gam.fit=gam(y~s(disp,6)+s(hp,5)+s(wt,5), data=train.dat)

建议您使用的是包gam而不是mgcv。但是,您所得到的错误(抱怨object$nsdf )是从mgcv包中产生的。不会同时将两个包加载到R会话中!!

代码语言:javascript
复制
library(gam)
set.seed(0)
dat <- data.frame(x1 = rnorm(100), x2 = rnorm(100), x3 = rnorm(100),
                  y = rnorm(100))
fit <- gam(y ~ s(x1,6) + s(x2,5) + s(x3,5), data = dat)
par(mfrow = c(1,3)); plot.gam(fit)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38450396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档