On Tue, Apr 7, 2009 at 12:20 PM, Roberto G. Gutierrez, StataCorp
<[email protected]> wrote:
> Continuing the thread, Jacob Wegelin <[email protected]> writes:
>
>> Thanks very much for your replies. Now the code leads to an error as
>> follows:
>
>> . xtmixed FinishTime Sex01F PL2Age2 Sex01FxPL2Age2 PL2Age3 nFin1974toPrev
>> MinCC PzCDrp MinCCxPzCDrp || _all:R.NAME || Year:
>
>> Performing EM optimization:
>> likelihood evaluates to missing
>> r(430);
>
> [...]
>
>> When I attempted to fit this model in SAS using GLIMMIX, the software hung
>> for several hours. My guess is that only software specifically designed for
>> sparse matrices can fit this model on these data (5000 observations, 22 Year
>> levels, 2900 NAME levels). If this is the case, does Stata plan to add
>> sparse matrix capability?
>
> In that case, Jacob should reverse the order of the levels. Try
>
> . xtmixed FinishTime Sex01F PL2Age2 Sex01FxPL2Age2 PL2Age3 nFin1974toPrev
> MinCC PzCDrp MinCCxPzCDrp || _all:R.Year || NAME:
>
> Jacob's original example had a matrix dimension of 2901. The above has a
> dimension of 23. Both fit the same model, but the latter assumes that "NAME"
> values are nested within all the data and can thus be treated as just random
> intercepts, realizations of a vector of dimension one. As a general rule, in
> a crossed-effects model always put the "big" level variable last.
Thank you for the tip. With your suggested syntax (see below), Stata
fit the model and returned coefficients and SEs very close to what I
had obtained in R. But
(1) Why is different syntax needed for the two different random
effects? That is, why are the two random effects (group variables) not
treated symmetrically?
(2) Why does Stata's ability to fit the model depend on the order of
the random effects in the -xtmixed- command?
(3) Where do you check the matrix dimension of your model in Stata? Do
you refer to the number of columns of Z in the standard notation Y=X
beta + Z b + epsilon?
(4) How could Stata fit a model with 2930 + 22 BLUPs and a matrix
dimension of only 23? (Using -xtmixed postestimation- I obtained the
BLUPs for both random effects and confirmed that Stata computed 22
BLUPs for Year and 2930 for NAME.)
(5) Why does the output below state that the first group variable is
"_all" rather than Year; why does it not plainly state that Year has
22 levels?
(6) Finally, does this syntax extend to three or more non-nested
grouping variables?
. xtmixed FinishTime Sex01F PL2Age2 PL2Age3 nFin1974toPrev MinCC
PzCDrp Sex01FxMinCC PL2Age2xnFin1974toPrev PL2Age3xnFin1974toPrev
nFin1974toPrevxPzCDrp PL2Age3xMinCC if FinYes==1 || _all:R.Year ||
NAME:
Performing EM optimization:
Performing gradient-based optimization:
Iteration 0: log restricted-likelihood = -11953.355
Iteration 1: log restricted-likelihood = -11953.354
Computing standard errors:
Mixed-effects REML regression Number of obs = 5276
-----------------------------------------------------------
| No. of Observations per Group
Group Variable | Groups Minimum Average Maximum
----------------+------------------------------------------
_all | 1 5276 5276.0 5276
NAME | 2933 1 1.8 21
-----------------------------------------------------------
Thanks again
Jacob A. Wegelin
Assistant Professor
Department of Biostatistics
Virginia Commonwealth University
730 East Broad Street Room 3006
P. O. Box 980032
Richmond VA 23298-0032
>
> As for sparse-matrix support, although we're very interested in how that area
> of research has developed, this is not an area of current active development.
>
> --Bobby
> [email protected]
> *
> * For searches and help try:
> * http://www.stata.com/help.cgi?search
> * http://www.stata.com/support/statalist/faq
> * http://www.ats.ucla.edu/stat/stata/
>
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/