2017-03-22 21 views
0

我有R中1級和2個變量我dataframe (df)縱向數據:R對於1級和2級變量的LME協變量的排序?

ID  Year Gender Race MathScore DepressionScore MemoryScore 
1  1999 M  C  80   15   80 
1  2000 M  C  81   25   60 
1  2001 M  C  70   50   75 
2  1999 F  C  65   15   99 
2  2000 F  C  70   31   98 
2  2001 F  C  71   30   99 
3  1999 F  AA 92   10   90 
3  2000 F  AA 89   10   91 
3  2001 F  AA 85   26   80 

我已經試過這些:

summary(fix <- lme(MathScore ~ Gender+Race+DepressionScore+MemoryScore, 
     random= Year|ID, data=df, na.action="na.omit") 

summary(fix2 <- lme(MathScore ~ 1+Gender+Race+DepressionScore+MemoryScore, 
     random=~1|Year, data=df, na.action=na.omit)) 

我不明白如何讓DepressionScoreMemoryScore變化內Year同時保持GenderRace恆定,特別是在fix2。另外,我不知道是否fix2被捕獲在我的數據發生的YearID變化。有沒有一種方法來重組它?

回答

0

在這種情況下,數學成績ID內變化(一年嵌套在ID),所以ID變成您的分組變量,可以指定:

summary(fix2 <- lme(MathScore ~ 1+Gender+Race+DepressionScore+MemoryScore, 
     random=list(ID = ~ 1), data=df, na.action=na.omit)) 

爲了得到一個隨機攔截模式或

summary(fix2 <- lme(MathScore ~ 1+Gender+Race+DepressionScore+MemoryScore, 
     random=list(ID = ~ Year), data=df, na.action=na.omit)) 

要獲得一年的隨機坡度。如果您對數學分數的變化感興趣,那麼您可能需要爲年份指定固定效果。

summary(fix2 <- lme(MathScore ~ 1+Gender+Race+DepressionScore+MemoryScore+Year, 
     random=list(ID = ~ Year), data=df, na.action=na.omit)) 

您可以與互動擴展

附: :您使用的軟件包不是lme4,而是nlme。也許你可以你的問題的標籤更改爲nlmelme4-nlme

P.P.S:I.m.o本網站提供的縱向數據的很好的例子有lme4或NLME分析:http://rpsychologist.com/r-guide-longitudinal-lme-lmer,應該是一個很大的幫助