R等于SAS中受试者的随机残差

时间:2018-03-23 20:57:58

标签: r sas lme4 mixed-models nlme

我可以在SAS中用残差作为随机效应来编码这个问题(我相信这是鱼的r方随机拦截)

    proc glimmix data=one method=mmpl ;
    class fish;
    model increment =age growth_year age*growth_year;
    random residual / subject=fish ;
    run;

这是与AR(1)协方差结构相同的分析。

   proc glimmix data=one method=mmpl ;
    class fish;
    model increment =age growth_year age*growth_year;
    random residual/ subject=fish type = ar(1) ;
    run;

这是我在R中尝试重现第一个不起作用的模型。

    model = lmer(increment ~ age + growth_year+ age*growth_year 
    + (resid()|fish), data = SR_data)

请帮助,使用lmer或glmer(伽马而不是正态分布)或lme或任何其他我不知道的包。

1 个答案:

答案 0 :(得分:1)

lme4包不允许使用R端模型,但nlme不允许。如果你想在鱼体内进行相关而没有鱼的随机效应(即只有R副作用,没有任何G副作用),那么我认为你想使用gls:这是一个使用Orthodont的例子来自nlme包的数据:

library("nlme")
gls(distance~age*Sex, correlation=corAR1(form=~1|Subject), data=Orthodont)

如果你想允许基线值的变化/按组(G-和R-侧)截取,那么你可以使用:

lme(distance~age*Sex, random = ~1|Subject,
     correlation=corAR1(form=~1|Subject), data=Orthodont)

如果你想要基线的变化但相关残差在主体内(仅限G面):

lme(distance~age*Sex, random=~1|Subject, data=Orthodont)

library(lme4)
lmer(distance~age*Sex + (1|Subject), data=Orthodont)