[R-sig-ME] MIXED MODEL WITH REPEATED MEASURES

Ben Bolker bbolker at gmail.com
Thu Dec 8 23:01:03 CET 2011


Erin Ryan <erin at ...> writes:

> 
> I am trying to specify a mixed model for my research, but I can't quite get
> it to work. I've spent several weeks looking thru various online sources to
> no avail. I can't find an example of someone trying to do precisely what I'm
> trying to do. I'm hoping some smart member of this mailing list may be able
> to help.
> 
> First off, full disclosure: (1) I'm an engineer by trade, so the problem may
> be related to my ignorance of statistics, and/or (2) I'm fairly new to R, so
> the problem may be related to my ignorance of R syntax. Here is the basic
> structure of my data (in longitudinal form):

  [snip]
 
> The rows below each subject are repeated measures (in years), with the
> specific pattern of repeated measurements unique to each subject. The data
> contains fixed effects and random effects, and there is clearly correlation
> in the random effects within each subject. The DepVar column represents the
> dependent variable which is a constant for each subject. All the data is
> empirical, but I wish to create a predictive model. Specifically, I wish to
> predict the value for DepVar for new subjects.
> 
> So I understand enough about statistics to know that I must employ a mixed
> model. I further understand that I must specify a covariance matrix
> structure. Given the relatively high degree of correlation in consecutive
> years, an AR(1) structure seems like a good starting point. I have been
> trying to build the model in SPSS, but without success, so I've recently
> turned to R. My first attempt was as follows--
> 
> ModelFit <- lme(fixed = DepVar ~FixedVar1+FixedVar2, random =
> ~RandomVar1+RandomVar2 | Subject, na.action = na.omit, data = dataset, corr
> = corAR1())
> 
> I assume this can't be the right specification since it neglects the
> repeated measure aspect of the data, so I instead decided to employ the
> corCAR1 structure, i.e.--
> 
> ModelFit <- lme(fixed = DepVar ~FixedVar1+FixedVar2, random =
> ~RandomVar1+RandomVar2 | Subject, na.action = na.omit, data = dataset, corr
> = corCAR1(0.5, form = ~ Years | Subject))
> 
> Now perhaps neither correlation structure is the right one (probably a
> different discussion for another day), but the problem I'm experiencing
> seems to occur regardless of the structure I specify. In both cases, I get
> the following error--
> 
> Error in solve.default(estimates[dimE[1] - (p:1), dimE[2] - (p:1), drop =
> FALSE]) : 
> 
>   system is computationally singular: reciprocal condition number =
> 5.42597e-022
> 
> Anybody know what is going wrong here? This error appears to be related to
> the fact that the DepVar is constant for each subject, because when I select
> a different dependent variable that is different for each repeated measure
> w/in the subject, I do not get this error.
> 

  I think you're right that DepVar is fixed per individual.
Technical details aside, I'm having trouble seeing how you're
going to estimate the effects of predictor variables that vary
within subject when you've only got one response per subject.
Furthermore, I think what you're terming "RandomVar1" and "RandomVar2"
are probably *not* random variables, but rather are variables
that vary within subject.   For this response variable, I would
suggest averaging the values of RandomVar1 and RandomVar2 per
subject and collapsing the data set to a simple linear model
on subjects -- and get rid of the correlation model at the
same time.  For response variables that do vary within subject,
I would suggest

ModelFit <- lme(fixed = DepVar ~FixedVar1+FixedVar2+
   RandomVar1 + RandomVar2, random = 1 | Subject, 
  na.action = na.omit, data = dataset, corr = corAR())




More information about the R-sig-mixed-models mailing list