0

加载 mgcv 并运行以下模型后 - 它返回以下错误。此代码在以前的时间(即昨天)有效。对此的任何帮助将不胜感激。

> aa1<-gam(Bin~s(Mud,bs="ps",k=8),family=binomial, gamma=1,data=Abaren)

Error in s(Mud, bs = "ps", k = 8) : unused argument(s) (bs = "ps", k = 8)

--

我现在收到下面的错误..考虑到所有这些代码在两天前运行良好的事实,这一切似乎都很奇怪..

## UQ Abundance only data (i.e. positive values only)

aa2<-gam(UQdata~s(MudUQ,bs="ps", k=15) ,family=Gamma(link=log),data=Antho)
xmin <- ceiling(min(Antho$MudUQ[Antho$Bin==1]))
xmax <- floor(max(Antho$MudUQ[Antho$Bin==1]))
Mudnew <- seq(from=xmin, to=xmax, by=0.1)
**Error in if (del == 0 && to == 0) return(to) : 
                missing value where TRUE/FALSE needed**
pred.dat <- data.frame(Mudnew)
names(pred.dat) <- "MudUQ"
pred.aa2 <- data.frame(predict.gam(aa2, pred.dat, se.fit=TRUE, type="response"))
pred.aa2.comb <- data.frame(pred.dat, pred.aa2)
names(pred.aa2.comb)
plot(fit ~ MudUQ, data=pred.aa2.comb, type="l", lwd=2, col=1, 
     lab="Density per 0.0132 m2", xlab="Mud content (%)")
4

1 回答 1

2

您是否使用了错误的软件包?mgcv和gam包都有 function 但只有前者需要一个和一个参数来影响基函数。s()bsk

例如,我可以使用以下方法重现错误gam::gam()

> require("gam")
> data(kyphosis)
> gam(Kyphosis ~ s(Age, k = 4, bs = "ps") + Number, family = binomial, 
+     data=kyphosis, trace = TRUE)
Error in s(Age, k = 4, bs = "ps") : unused arguments (k = 4, bs = "ps")
> gam(Kyphosis ~ s(Age) + Number, family = binomial, data=kyphosis, trace = TRUE)
GAM s.wam loop 1: deviance = 66.42095 
GAM s.wam loop 2: deviance = 63.77252 
GAM s.wam loop 3: deviance = 63.25199 
GAM s.wam loop 4: deviance = 63.13399 
GAM s.wam loop 5: deviance = 63.11016 
GAM s.wam loop 6: deviance = 63.10748 
GAM s.wam loop 7: deviance = 63.10727 
GAM s.wam loop 8: deviance = 63.10725 
GAM s.wam loop 9: deviance = 63.10725 
Call:
gam(formula = Kyphosis ~ s(Age) + Number, family = binomial, 
    data = kyphosis, trace = TRUE)

Degrees of Freedom: 80 total; 75.00002 Residual
Residual Deviance: 63.10725

但不适用于mgcv包和mgcv::gam()

> require(mgcv)
> require("mgcv")
> set.seed(2) ## simulate some data... 
> dat <- gamSim(1,n=400,dist="normal",scale=2)
Gu & Wahba 4 term additive model
> b <- gam(y ~ s(x0, k = 5, bs = "ps") + s(x1) + s(x2) + s(x3), data=dat)
Loading required package: splines
于 2013-08-15T20:57:11.950 回答