Statalist The Stata Listserver

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

Re: st: mlogit, bootstrap, mfx: "no observations"

From   "Stas Kolenikov" <[email protected]>
To   [email protected]
Subject   Re: st: mlogit, bootstrap, mfx: "no observations"
Date   Thu, 24 Aug 2006 08:24:11 -0500

Is there any reason that you don't like the standard errors supplied
by MLE (other than advisor's/reviewer's suggestion)? Technically the
full bootstrap for the categorical dependent variable should give you
infinite standard errors, as for some bootstrap samples, all the
responses will be identical, and thus the estimated parameters will go
to infinity. To apply the bootstrap to situations like that, certain
tweaks may be necessary, such as constraining the proportion of each
category not to go to zero.  You may be running into something similar
with -mfx-, although I don't use the command often enough to know
precisely what it does and why it breaks down.

Also, the bootstrap is good for smooth functions of data (or at least
smooth functionals of the distribution function), and categorical data
are obviously jumpy; I don't think the latter is much of a problem
here, but just to warn you that the bootstrap is not a device like a
magician's hat, it has its limits of applicability that one may hit
surprisinlgy often.

On 8/24/06, Guido Heineck <[email protected]> wrote:
Dear all,

I have cross-sectional data and run a multinomial logit model for a dependent var with 4 categories (by gender). Following the model, I calculate marginal effects for a subset of covariates.
I have to bootstrap the standard errors and here's where my problem comes in: Without the bootstrap option, everything runs fine. Bootstrapping the s.e. also works fine - without marginal effects. Everything together however generates the following error message:

no observations

Here's the relevant part of my code:

foreach c of local foo {;
mlogit yvar `xvars' `c' if male==0, vce(bootstrap, reps(100) seed(123));
mfx , predict(p outcome(1)) var(`c');
mfx , predict(p outcome(2)) var(`c');
mfx , predict(p outcome(3)) var(`c');
mfx , predict(p outcome(4)) var(`c');

Any ideas on what I am missing here? Thanks for any helpful suggestions.


Guido Heineck
University of Erlangen-Nuremberg
Department of Economics
Lange Gasse 20
90403 Nuremberg
fon: +49-(0)911-5302-260
fax: +49-(0)911-5302-178
ENER - European Network
on the Economics of Religion

Echte DSL-Flatrate dauerhaft f�r 0,- Euro*. Nur noch kurze Zeit!
"Feel free" mit GMX DSL:
*   For searches and help try:

Stas Kolenikov

*   For searches and help try:

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