6

错误信息:

SYSTEM:win7/64bit/ultimate/16gb-real-ram加虚拟内存,memory.limit(32000)

  1. 这个错误信息是什么意思?

    在 glmulti(y = "y", data = mydf, xr = c("x1", : !Oversized 候选集。

    mydf 有 3.6 毫米的行和 150 列的浮点数

  2. 在 glmulti 中采取哪些措施来解决它?
  3. R世界中glmulti的任何替代品?

R/64bit“好运动”

4

1 回答 1

6

我遇到了同样的问题,这是我到目前为止发现的:

  1. 行数似乎不是问题。问题在于,使用 150 个预测器的包无法处理详尽的搜索(即查看并比较所有可能的模型)。level=2根据我的经验,您的特定错误消息“Oversized Candidate Set”是由您还允许成对交互(设置level=1为禁止交互)这一事实触发的。然后您很可能会遇到警告消息“预测变量过多”。在我的(非常有限的)实验中,我发现我在候选集中工作的最大模型数量约为 10 亿个模型(具体来说:30 个协变量等于 1,073,741,824,基于 2^n 计算可能的组合(n=30 )。)。这是我用来评估这个的代码

    out <integer(50) for(i in 2:40) out[i]<-glmulti(names(data)[1], names(data)[2:i], method="d", level=1, crit=aic, data=data)

    一旦循环达到 31 个协变量,候选集就会返回 0 个模型。33 及以后它开始返回警告消息。我的“数据”有大约 100 个变量和大约 1000 行,但就像我说的那样,问题是数据集的宽度而不是深度。

  2. 就像我说的,从消除交互开始,然后考虑首先使用其他变量减少技术来降低变量数量(因子分析/原理组件或聚类)。这些问题将失去一些可解释性,但保持预测能力。

  3. glmuttil文档将软件包与替代方案进行了比较,同时强调了它们的用例、优点和缺点。

PS:我在 Win7、64 位、16GB Ram、R 版本上运行我的东西:3.10 glmutil 1.07。PPS:据说该软件包的作者去年发布了 2.0 版,该版本将修复其中的一些问题。在源代码中阅读更多信息

于 2014-05-26T21:58:47.693 回答