Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down at the end of May, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

st: conditional imputation using ICE


From   "Miller, Daniel P" <dpmiller@bu.edu>
To   "statalist@hsphsun2.harvard.edu" <statalist@hsphsun2.harvard.edu>
Subject   st: conditional imputation using ICE
Date   Thu, 16 Jun 2011 10:55:06 -0400

Hello statalisters, I am having a problem with the conditional option when running ICE with stata 11. My problem originates with a larger dataset and much bigger imputation algorithm, but I was able to produce it in smaller form in the following way:

I am running the command:

ice male m.race o.ses0 perdaype0 perweekpe0 perdaype1 perweekpe1, cmd (race:  mlogit, ses0: ologit, perdaype0 perdaype1 perweekpe1 perweekpe0: reg), saving(conditional_test, replace) m(1) conditional(perdaype0: perweekpe0>0 & perweekpe0<=5 perdaype1: perweekpe1>0 & perweekpe1<=5), match(perweekpe0 perweekpe1)

in the dataset, 
male is an indicator for male
race is a categorical race variable
ses0 is an ordinal variable for socioeconomic startus
perdaype0 is a variable measuring daily time spent in physical education at time0
perdaype1 is a variable measuring daily time spent in physical education at time 1
perweekpe0 is a variable measuring the number of times per week (0-5) children participate in physical education at time 0
perweekpe1 is a variable measuring the number of times per week (0-5) children participate in physical education at time 1

I am trying to set up the algorithm such that values for perdaype0 and perdaype1 are only imputed when perweekpe0 and perweekpe1 are greater than 0, respectively.

When the command is run as shown above, the imputation behaves in just this way for perdaype0 and perweekpe0 but not for perdaype1 and perweekpe1, meaning that no values are imputed for perdaype0 when perweekpe0==0, but values ARE imputed for perdaype1 when perweekpe0==0. I have found that this result is robust to the way that I specify the equation for the perday and perweek variables (ologit vs reg) and whether I use the match option for the perweek variables.

I am only able to the imputation to perform as I would expect, when I change the individual prediction equations to EXCLUDE the perday and perweek variable from the other time. 
So, this works:
, eq(perdaype1 perweekpe1 perdaype0 perweekpe0: _Irace_1 _Irace_2 _Irace_3  _Irace_4  _Ises0_2 _Ises0_3 _Ises0_4 _Ises0_5 male)

whereas this does not work:
, eq(perdaype1 perweekpe1: perdaype0 perweekpe0 _Irace_1 _Irace_2 _Irace_3  _Irace_4  _Ises0_2 _Ises0_3 _Ises0_4 _Ises0_5 male, ///
perdaype0 perweekpe0: perdaype1 perweekpe1 _Irace_1 _Irace_2 _Irace_3  _Irace_4  _Ises0_2 _Ises0_3 _Ises0_4 _Ises0_5 male)

Any insight would be much appreciated.

Thanks,
Dan




*
*   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/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index