Greetings.  I would like to use lme() from the nlme package, but with a
random effects correlation structure different from those built in.  In
particular, I desire a class like pdSymm (general positive definite),
but with the constraint that the diagonal is constant, representing
constant variance but an unspecified correlation structure.  

What (I think) will do what I want is a pdMat class that is in some
sense in between the pdDiag and the pdSymm classes.  I would like to
have its correlation structure be unconstrained, like pdSymm, but have
the diagonal elements constrained to be equal, like pdDiag, representing
equal variances.  I have entertained writing this class on my own, but
as there are a lot of method dependencies to work out, I would prefer
not to reinvent the wheel if possible.  

Is there any implementations of this available somewhere, or an easy
hack of the built-in nlme package functionality to do this?  And
naturally, any implementation in the lme4 package would be welcome too.


Many thanks,  John
John  Szumiloski

Senior Biometrician
Biometrics Research
WP53B-120
Merck Research Laboratories
P.O. Box 0004
West Point, PA 19486-0004

> (215) 652-7346 (PH)
> (215) 993-1835 (FAX)
> 
> 
(extra background details follow...)

My motivation is this. In an assessment of retesting variability, a
Response (numeric, continuous) was measured on several Subjects on each
of three Days.  Day and Subject were crossed.  For this scenario, a
model was constructed to assess the subjectwise variability, the
retesting (between Day) variability, as well as the possible correlation
between Days (this was done as a generalization of introducing Day as an
effect proper).  This model could be fit with

	fit <- lme(Response ~ 1, random=list(~1|Subject),
correlation=corSymm(form=~DayIndex|Subject) )

where DayIndex <- as.numeric(factor(Day)), as corSymm needs an integer
variable within the grouping.  

The random effect variability estimates are thus then the subjectwise
variability (the intercept estimate) and the daywise variability (the
residual estimate).  The correlation estimates communicate information
including (but not limited to) systematic Daywise effects (more
accurately, the estimates communicate information on any Day * Subject
interaction).  

Now here is my quandary.  I am now in a similar situation, but where
there is replication at each timepoint.  The corSymm construction no
longer works, as the replication would be defined to be perfectly
correlated (i.e., identical).  I can get a reasonable fit by using a
pdMat-type construction for the random statement:

	fit2 <- lme(Response ~ 1, random=list(Subject=pdSymm(~0+Day))

But now the variability estimates for within each day are not
constrained to be equal, as well as the magnitudes of the Subjectwide
effects being absorbed into the correlations, driving them close to +1
and making interpretation more difficult.  (The zero in the formula just
makes the output look nicer).  And using pdDiag instead of pdSymm
doesn't fit any between day correlations.  

(end background details)



Notice:  This e-mail message, together with any attachme...{{dropped:14}}


