1

在解决这个问题时:lme4 和 nlme 之间的干扰将 OP 打包,我确定将响应向量包装在对导致失败log()的调用中。lme4::lmListlmList

例如,

my.lmList.model <- lmList( log(response) ~ log(predictor) | group, mydata)

给出回应

Error in eval(expr, envir, enclos) : object 'response' not found

但是,如果您首先记录响应和预测器,它就可以正常工作,即

mydata$log.response <- log(mydata$response)
mydata$log.predictor <- log(mydata$predictor)
my.new.lmList.model <- lmList( log.response. ~ log.predictor | group, mydata)

有人可以解释为什么在第一个示例中将响应包装在 log() 中不起作用吗?在我看来(至少直觉上)它应该这样做。

4

1 回答 1

0

我不确定你想要什么答案。“为什么”是因为 lmList 就是这样设计的。您已经知道解决方法。您想知道如何重写 lmList 以使其在这种情况下不会失败吗?这不是一个简单的功能。最好在仔细阅读文档并查看函数以查看这是否是故意行为后编写包作者。

于 2011-12-13T15:01:09.680 回答