Stata The Stata listserver
[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

Re: st: xtabond

From   Mark Schaffer <[email protected]>
To   [email protected], Antonio Rodrigues Andres <[email protected]>
Subject   Re: st: xtabond
Date   Sun, 25 Apr 2004 18:10:39 +0100 (BST)


Quoting Antonio Rodrigues Andres <[email protected]>:

> Dear Stata users
> I am trying to estimate a dynamic panel data model where the
> lagged
> value of the endogenous variables is used as further regressor.
> The
> right command should be xtabond in STATA. I did it but I got the
> following message:
> Does anybody know 
> I am using an unbalanced panel data where countries are not
> observed
> consecutively. I dont know if this may cause a serious problem.
> tsset country year
>        panel variable:  country, 1 to 21
>         time variable:  year, 1950 to 1998, but with gaps
> . xtabond srt gini income, lag(1)
> matsize too small
>     You have attempted to create a matrix with more than 800 rows
> or
> columns or to estimate a model with more than 800
>     variables plus ancillary parameters.  You need to increase
> matsize
> using the set matsize command; see help matsize.
> matsize must be at least 1061
> (you have 1061 instruments)

I might be wrong but I think you're falling into the xtabond trap of 
creating too many instruments.  You have a dataset of 21*49=1029 
observations.  The problem is that you aren't making use of the maxlags() 
option, and the default - which in my view is a dangerous one! - is to 
make use of as many lags of the dependent/predetermined variables as 
possible when constructing the instrument set.

The lags option is set to 1, so this means are making use of 49-1-2=46 
lags of the dependent/predetermined variables as instruments.  Because of 
the way the instrument set is constructed when using xtabond, the number 
of instruments adds up *very* quickly, and in your case the result is that 
you have more instruments than observations.  (This is why I think the 
default is dangerous.)  This is clearly not allowed, but even if you got 
the number of instruments down to 800 or whatever, you would still have 
major problems because of finite sample bias - the bias gets bigger as the 
number of instruments goes up.

I'm not sure what the consensus in the literature is on this, but I would 
guess that if you have 1000 observations, then you probably don't want 
more than 100 or so instruments.  Use the maxlags() option to get this.

Hope this helps.


> Antonio
> *
> *   For searches and help try:
> *
> *
> *

Prof. Mark Schaffer
Director, CERT
Department of Economics
School of Management & Languages
Heriot-Watt University, Edinburgh EH14 4AS
tel +44-131-451-3494 / fax +44-131-451-3008
email: [email protected]


This e-mail and any files transmitted with it are confidential
and intended solely for the use of the individual or entity to
whom it is addressed.  If you are not the intended recipient
you are prohibited from using any of the information contained
in this e-mail.  In such a case, please destroy all copies in
your possession and notify the sender by reply e-mail.  Heriot
Watt University does not accept liability or responsibility
for changes made to this e-mail after it was sent, or for
viruses transmitted through this e-mail.  Opinions, comments,
conclusions and other information in this e-mail that do not
relate to the official business of Heriot Watt University are
not endorsed by it.
*   For searches and help try:

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