Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
From | Steve Samuels <sjsamuels@gmail.com> |
To | statalist@hsphsun2.harvard.edu |
Subject | Re: st: SE erroes for xtmixed-predict fitted |
Date | Wed, 29 Feb 2012 20:41:30 -0500 |
Two corrections: The second model you fit was: Y_ij = a + a_j + u_i + b_i*j + e_ij where the a_j's are fixed and the u, b, and e terms are random. i indexes subjects and j= 1,2,3,4 indexes the pills Steve This is exactly what I wished you'd shown us the first time, Ricardo. To answer your questions: 1. Constant SEs for no random slope model? Yes You have a perfectly balanced data set: four pills with six subjects per pill. Therefore the standard errors for the fitted values will be identical, because they are based on the same SDs and the same number of observations. This is easier to see if you run: *********************************************************** tab pill, gen(pill) xtmixed fat pill1 pill2 pill3 pill4, nocons || id:, nolog *********************************************************** This is an equivalent model and fits the four fixed pill means individually. If you compute se_fitted as before, it will equal 17.3125, and the constant standard error for the fitted pill means 7.068 is se_fitted/sqrt(6), which you can verify. If, on the other hand, some subjects did not get all the pills, then you would expect standard errors for pill effects would differ, because the denominator would not always be sqrt(6). You can see this if you delete an observation. 2. Random "slope" model? ************************************* xtmixed fat i.pill ||id: pill , nolog ************************************* Here you are off the track. Pill is a categorical variable, but the "||id: pill" treats it as a continuous variable and fits a slope coefficient. If "i" indicates id and "j" is the value associated with pill j you are fitting a model: Y_ij = a + a_j + u_i + b*j + e_ij where the a_j's are fixed and the u and e terms are random Formally, nothing prevents you from doing this, but it doesn't make sense. Your standard error for even this model was incorrect. The standard error for the fitted value should contain a term for b^2*j^2. A similar term appeared in the post that I referred you to. For an example of a random slope model, see the pig weight example in the Manual. Steve sjsamuels@gmail.com On Feb 29, 2012, at 8:32 AM, Ricardo Ovaldia wrote: Thank you Steve for your help and patience. I am sorry that I was not clear with what I needed. What I was actually looking for was an -ado- file that would do this instead of what you had posted because I was not sure that I was changing your code correctly to fit my model. Again I am sorry, I did not mean to upset you and I really appreciate your help very much. That said, here is a simple example that I am not sure it is correct. There are 6 cats each treated with 4 different pills: clear input id str1 sex fat1 fat2 fat3 fat4 1 M 44.5 7.3 3.4 12.4 16.900 2 M 33.0 21.0 23.1 25.4 25.625 3 M 19.1 5.0 11.8 22.0 14.475 4 F 9.4 4.6 4.6 5.8 6.100 5 F 71.3 23.3 25.6 68.2 47.100 6 F 51.2 38.0 36.0 52.6 44.450 end reshape long fat ,i(id) j(pill) <output omitted> xtmixed fat i.pill ||id: , nolog <output omitted> . predict fitted, fitted . predict se_fix, stdp . predict se_u*, reses . gen se_fitted= sqrt(se_fix^2 + se_u1^2 ) . sum se_fitted Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- se_fitted | 24 8.373251 0 8.373251 8.373251 SE are the same for all observations. Now for the random slope & intercept model: . drop fitted se_fix se_u1 se_fitted . xtmixed fat i.pill ||id: pill , nolog <output omitted> . predict fitted, fitted . predict se_fix, stdp . predict se_u*, reses . gen se_fitted= sqrt(se_fix^2 + se_u1^2 + se_u2^2) . sum se_fitted Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- se_fitted | 24 8.655818 .0559801 8.592957 8.737734 Did I modify your code correctly? Thank you again, Ricardo Ricardo Ovaldia, MS Statistician Oklahoma City, OK --- On Tue, 2/28/12, Steve Samuels <sjsamuels@gmail.com> wrote: From: Steve Samuels <sjsamuels@gmail.com> Subject: Re: st: SE erroes for xtmixed-predict fitted To: statalist@hsphsun2.harvard.edu Date: Tuesday, February 28, 2012, 8:06 PM I don't know what you are looking at, but yes,I would expect the same or near identical standard errors under many circumstances. When you averaged, you are ignoring the fact that Stata's linear predictors are "best". I don't see show you thought you could improve upon them. I suggest that you look at a book on longitudinal data. Three good ones are: Diggle, Heagerty, Liang and Zeger, Anal of Long data 2nd Ed Verbeke and Molenbergs Linear mixed models for longitudinal analysis Fitzmaurice, Laird,Ware, Applied Longitudinal Data but there are many others. Finally, please follow the FAQ in the future and show exactly what you did and what Stata replied. It is quite irritating to be told that you had searched and found no answer to your question, when, apparently you had found an answer, but just didn't like what it showed. Steve sjsamuels@gmail.com On Feb 28, 2012, at 7:46 PM, Ricardo Ovaldia wrote: Thank you Steve. I did see Steve's post, however when I tried doing this, I got the same SE for every patient when I leave out the random slope term i.e.: xtmixed cholest i.drug month || patid So I was not sure that it was working correctly. When I included the random slope term, I get slightly different values for each patient but still very similar to each other. Is that what I should expect? Ricardo Ricardo Ovaldia, MS Statistician Oklahoma City, OK --- On Tue, 2/28/12, Steve Samuels <sjsamuels@gmail.com> wrote: From: Steve Samuels <sjsamuels@gmail.com> Subject: Re: st: SE erroes for xtmixed-predict fitted To: statalist@hsphsun2.harvard.edu Cc: rgutierrez@stata.com Date: Tuesday, February 28, 2012, 4:37 PM You must have missed http://www.stata.com/statalist/archive/2011-12/msg00852.html where I tried to answer a related questionn. I'm not sure I'm right. If I'm not, I bet that Bobby Gutierrez knows. Steve sjsamuels@gmail.com On Feb 28, 2012, at 3:50 PM, Ricardo Ovaldia wrote: I searched the Statalist archives for the answer to the following query and could not find one. Can someone please help. After using -xtmixed- to fit: xtmixed cholest i.drug month || patid:month I used -predict, fitted- to get predicted estimates that account for both the fixed and random effects. I them average these over drug and month to get mean predicted cholesterol values for each drug at each time point. Is there a way to place a CI or to calculate SE for these estimates? Thank you, Ricardo. * * 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/