Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.


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

Re: st: Convergence never achieved with MI impute chained


From   Lena Lindbjerg Sperling <[email protected]>
To   [email protected]
Subject   Re: st: Convergence never achieved with MI impute chained
Date   Thu, 21 Jun 2012 10:15:12 +0200

Dear Wes,

Thank you very much for your answer. Good to know that's not just me who finds it difficult! 

I just looked at the mail again, and the data is not as bad as it looks, as I'm only imputing on the employed population (lstatus==1) and when we only look at them mi describe shows:
 mi describe 

  Style:  wide
          last mi update 21jun2012 10:03:51, 18 seconds ago

  Obs.:   complete        2,702
          incomplete        912  (M = 0 imputations)
          ---------------------
          total           3,614

  Vars.:  imputed:  7; occup(126) ocusec(144) whours(167) edulevel(171) ocu(228) industry(204) mwage(598)

          passive:  0

          regular:  10; soc reg gender head age urb vocational lstatus unitwage marital

          system:   1; _mi_miss

         (there are 70 unregistered variables)

When I run the mi impute chained noisily I get the following:

Conditional models:
             occup: mlogit occup i.ocusec whours i.edulevel i.industry i.ocu mwage marital soc reg gender age urb if
                     lstatus==1 [pweight = wgt], augment noisily
            ocusec: mlogit ocusec i.occup whours i.edulevel i.industry i.ocu mwage marital soc reg gender age urb if
                     lstatus==1 [pweight = wgt], augment noisily
            whours: regress whours i.occup i.ocusec i.edulevel i.industry i.ocu mwage marital soc reg gender age urb if
                     lstatus==1 [pweight = wgt], noisily
          edulevel: ologit edulevel marital soc reg gender age urb if lstatus==1 [pweight = wgt], augment noisily
          industry: mlogit industry i.occup i.ocusec whours i.edulevel i.ocu mwage marital soc reg gender age urb if
                     lstatus==1 [pweight = wgt], augment noisily
               ocu: mlogit ocu i.occup i.ocusec whours i.edulevel i.industry mwage marital soc reg gender age urb if
                     lstatus==1 [pweight = wgt], augment noisily
             mwage: regress mwage i.occup i.ocusec whours i.edulevel i.industry i.ocu marital soc reg gender age urb if
                     lstatus==1 [pweight = wgt], noisily


Performing monotone imputation, m=1:

Running mlogit on observed data, m=1:


Iteration 0:   log pseudolikelihood = -2673121.6  
Iteration 1:   log pseudolikelihood = -2484446.7  
Iteration 2:   log pseudolikelihood = -2455948.8  
Iteration 3:   log pseudolikelihood = -2454722.9  
Iteration 4:   log pseudolikelihood = -2454542.1  
Iteration 5:   log pseudolikelihood = -2454499.2  
Iteration 6:   log pseudolikelihood = -2454489.2  
Iteration 7:   log pseudolikelihood = -2454487.1  
Iteration 8:   log pseudolikelihood = -2454486.8  
Iteration 9:   log pseudolikelihood = -2454486.7  
Iteration 10:  log pseudolikelihood = -2454486.7  
Iteration 11:  log pseudolikelihood = -2454486.7  
Iteration 12:  log pseudolikelihood = -2454486.7  
Iteration 13:  log pseudolikelihood = -2454486.7  
Iteration 14:  log pseudolikelihood = -2454486.7  (not concave)
.
.
.
.

Not completely sure what this means. Can you see where things are wrong from this?

When I use -mi xeq 0: mlogit - the result is:
m=0 data:
-> mlogit
last estimates not found
r(301);

But I thought it was the observed data...which should be there? 
Sorry if these questions seem dumb...I'm a bit new in this...

Best regards,
Lena


Den Jun 21, 2012 kl. 1:04 AM skrev Wes Eddings, StataCorp:

> Lena Lindbjerg Sperling ([email protected]) received a
> "convergence not achieved" error from -mi impute chained-:
> 
>> (snip)
> 
>> My MI code looks like this:
> 
>> mi impute chained (mlogit) ocu occup ocusec industry (ologit, noimp) edulevel
>> (regress) mwage whours =  soc reg gender age urb if lstatus==1 [pweight=wgt],
>> chainonly burnin(100) savetrace(impstats, replace) augment
> 
>> Any help on why I can never get convergence is very much appreciated!
> 
>> (snip)
> 
> Lena's imputation problem is a challenging one---there are several categorical
> variables, and some variables have many missing values.  To isolate the
> convergence error, Lena may re-run -mi impute chained- with the -noisily-
> option, which will display the output for each model that is fit.  Lena may then
> try to fit the non-convergent model on the observed data, by using the -mi xeq
> 0:- prefix with, say, the -mlogit- command.  Looking at the observed data may
> make it easier to tell how the model should be modified.
> 
> --Wes
> [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/


© Copyright 1996–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index