我在R中使用nlme软件包的功能时遇到错误

时间:2018-10-31 06:58:37

标签: r function error-handling nlme

我正在尝试在R中拟合线性增长模型(LGM),并且我了解主要步骤是将Null模型与时间拟合为我的自变量Y(允许随机效应)和空模型不允许随机效应,然后将两者进行比较,看看随机效应是否足够强以证明可以通过随机截距使用该模型。

我设法使用lme4程序包的lmer函数对具有随机截距的模型进行拟合,但是我无法在该程序包中找到一个函数使我能够对模型进行随机截距的拟合。

我尝试使用nlme软件包来拟合具有随机截距(lme函数)和不具有(gls函数)的模型,但是它们都不适合我。

我的原始代码是:

library(nlme)

LMModel <- lme(Y~Time, random=~Time| ID, data=dataset,  
               method="ML")

并运行它,我得到一个错误,提示“对象中缺少值”(显然是指我的Time变量)。因此,我将数据集转换为带有“ matr <-as.matrix(dataset)”的矩阵,并将缺少的数据管理部分添加到我的代码中,最终变成:

LMModel <- lme(Y~Time, random=~Time| ID, data=dataset,   
               method="ML",  na.action = na.exclude(matr))

运行此命令,出现错误:'找不到函数“ 1”'

我进一步尝试使用nlme的gls函数拟合没有随机效应的模型,并得到完全相同的错误。

我感到很迷茫,因为我似乎无法弄清楚函数1的含义。关于这里可能发生什么的任何想法?

非常感谢您的帮助!

Federico

0 个答案:

没有答案