0

我对 lmer 做了一些更改。它可以正常工作,但是我无法摆脱运行程序时弹出的警告消息。我添加了以下选项,这些选项允许程序在不停止但带有警告消息的情况下运行。我相信这是 check.nobs.vs.rankZ = "warningSmall" 部分。我怎么能摆脱这个,有什么建议吗?谢谢你。

   lmerControl(check.nobs.vs.nlev = "ignore",check.nobs.vs.rankZ =   
   "warningSmall",check.nlev.gtreq.5 = "ignore",check.nobs.vs.nRE="ignore",
   check.rankX =    c("ignore"),check.scaleX = "ignore",check.formula.LHS="ignore",
   ## convergence checking options
   check.conv.grad   = .makeCC("warning", tol = 1e-3, relTol = NULL),
   check.conv.singular = .makeCC(action = "ignore",     tol = 1e-4),
   check.conv.hess   = .makeCC(action =    "warning", tol = 1e-6)

来自 R 的警告信息:

Warning message:
   In checkZrank(reTrms$Zt, n = n, control, nonSmall = 1e+06) :
     number of observations (=300) <= rank(Z) (=300); the random-effects parameters and the
    residual variance (or scale parameter) are probably unidentifiable
4

1 回答 1

0

你应该试试check.nobs.vs.rankZ="ignore"

lmerControl不需要指定非默认选项以外的任何内容:快速浏览一下,这些是您的非默认值:

lmerControl(check.nobs.vs.nlev = "ignore",check.nobs.vs.rankZ =   
   "ignore",check.nlev.gtreq.5 = "ignore",check.nobs.vs.nRE="ignore",
   check.rankX =    c("ignore"),
   check.scaleX = "ignore",
   check.formula.LHS="ignore",
   check.conv.grad   = .makeCC("warning", tol = 1e-3, relTol = NULL))

一般来说,我建议只关闭您知道要覆盖的特定警告和错误是明智的——上面的设置看起来可能会给您带来麻烦。

我没有检查过这个,因为你没有给出一个可重复的例子......

于 2014-06-07T14:14:08.880 回答