5

我使用 R 版本 2.15.1 (2012-06-22) 和 mgcv 版本 1.7-22

我在 R 中加载了以下一组包:


library(sqldf)
library(timeDate)
library(forecast)
library(xts)
library(tseries)
library(MASS)
library(mgcv)

碰巧我不能运行一个简单的模型(我省略了代码)。甚至从帮助页面中获取的示例代码:


dat = gamSim(1,n=400,dist="normal",scale=2)
b = gam(y~s(x0)+s(x1)+s(x2)+s(x3),data=dat)

给出一个错误:


Error in qr.qty(qrc, sm$S[[l]]) : 
  NA/NaN/Inf in foreign function call (arg 5)
In addition: Warning message:
In smoothCon(split$smooth.spec[[i]], data, knots, absorb.cons, scale.penalty = scale.penalty,  :
  number of items to replace is not a multiple of replacement length

请注意,如果我只是加载包 mgcv 然后立即使用示例代码,一切正常。如果我只是加载所有包并运行示例代码,它也可以工作。如果我只是行不通

  1. 加载所有包
  2. 做一些文件读取、sqldf 语句、ts 操作和一些来自包预测的模型。
  3. 如果我然后应用 GAM,它就不再起作用了。

显然,一般环境中的变量定义会破坏包的功能。

是否有任何已知问题?如果我加载各种包,是否有必须遵守的一般规则?我可以编写“干扰”包 mgcv 的代码吗?

4

2 回答 2

2

@Richard 有 2 个与 GAM 相关的软件包:gam 和 mgcv。同时加载两个库通常会导致冲突。

于 2013-02-18T21:11:02.897 回答
0

加载 mgcv 作为第一个包解决了我的问题......奇怪但真实。

于 2013-02-20T08:37:43.100 回答