[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

Re: st: capture number of -xtmixed- iterations?

From   [email protected] (Yulia Marchenko, StataCorp)
To   [email protected]
Subject   Re: st: capture number of -xtmixed- iterations?
Date   Wed, 26 Dec 2007 13:48:07 -0600

Jeph Herrin <[email protected]> wants to keep track of how many times
-xtmixed- failed to converge in the simulations:

> I'm running a simulation using -simulate- to call a wrapper program for 
> -xtmixed-. Sometimes -xtmixed- doesn't converge, so I call -xtmixed- with
> the option -iterate(1000)-, which forces it to stop after 1000 iterations.
> What I would like to do is keep track of how often -xtmixed- is not
> converging before 1000 iterations.  However, there seems to be no way that I
> can find to capture the number of iterations, other than parse the output of
> -xtmixed- itself. Is there anywhere that the number of iterations is stored
> for use post-estimation?

The number of iterations is not saved after -xtmixed- (or other -ml-
commands).  However, Jeph can use -e(converged)-, saved after -xtmixed- and
other -ml- commands, to count how many times the model failed to converge
during simulations.  To do this, return the values of -e(converged)- as a
returned result from the wrapper command.  See an example below.

cap program drop mywrapper
program mywrapper, rclass
	version 10
	set obs 10
	gen double id = _n
	gen double y = 2*invnormal(uniform())
	expand 5
	replace y = 5 + y + invnormal(uniform())
	xtmixed y || id: , iter(3)
	return scalar Nconverged = e(converged)

simulate (r:conv = r(Nconverged)) _b, reps(3): mywrapper
qui summ  r_conv
di as txt "# converged: " as res r(N)

[email protected]
*   For searches and help try:

© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index