nlme 中的 pairs() 函数出现问题

Trouble with pairs() function in nlme

我无法让 pairs() 函数在 nlme 中运行。以 Pinhiero 和 Bates S 和 S-Plus 中的混合效应模型.

为例

模型本身运行良好

fm1Theo.lis <- nlsList(conc ~ SSfol(Dose, Time, lKe, lKa, lCl), data = Theoph)

但是这对阴谋...

pairs(fm1Theo.lis, id = 0.1)

...returns 这个错误

Error in as.data.frame.default(x) : 
  cannot coerce class "c("nlsList", "lmList")" to a data.frame

我也试过了

pairs(fm1Theo.lis, ~ ranef(., level = 2), id = 0.1)

但是得到同样的错误。有什么想法吗?

在这种情况下,人们可能会这样想。错误

Error in as.data.frame.default(x) : 
  cannot coerce class ‘c("nlsList", "lmList")’ to a data.frame

表示 class c("nlsList", "lmList") 的某些对象被强制转换为数据框。现在由于fm1Theo.lis是使用nlsList的结果,看来错误中的对象确实是nlsList。这意味着 pairs 不知道如何处理此类 class 的对象。为了证实这一点,我们可以 运行

pairs.default(fm1Theo.lis, id = 0.1)

当没有找到 fm1Theo.lis 的特定方法时会发生什么。确实错误是一样的。以某种方式确认 nlsList 并且来自 nlme,很明显问题出在加载 nlme 包上。然后加载它或重新启动会话几乎肯定会有所帮助。