On Mon, 10 Aug 2009, Zhenzeng Young wrote:

> I tried to estimate panel data simultaneous equation model, but
> failed as an error message appeared, it says "Sorry, command not
> available for this estimator".
>
> I attached my dataset to this mail, and the information about
> the dataset and equations is...

Thanks for the test case.  This was very helpful -- it exposed a
few bugs that are now fixed in CVS and the Windows snapshot at

http://ricardo.ecn.wfu.edu/pub/gretl/gretl_install.exe

This response is rather lengthy. but hopefully it may be helpful
to you and to others who may have run into similar problems.

First, the error message you got -- "Sorry, command not available
for this estimator" -- was wrong and misleading.  The message
should have been, "Missing data encountered".  (I had forgotten
that gretl rejects missing values when doing system estimation;
that's not a bug in itself, but the error-reporting was messed
up.)

We then want to limit the sample to non-missing observations to do
the system estimation.  My script to handle this began as follows:

<script>
open fin_dev_v1.csv
# register the panel structure
setobs 26 1.1 --stacked-time-series

list sysvars = pf gdpr ko pcr gdpc efw to fdi
smpl sysvars --no-missing
</script>

The idea was to make a list of all the variables used in the
system equations, then sample with the "--no-missing" option to
cut out the rows with missing values for variables in the list.

This exposed two further issues.  First, the word "to" is used by
gretl in constructing ranges of lags.  So my command to set up the
list "sysvars" went wrong -- it was confused by your variable
named "to".  My fix for issue this was to make "to" a reserved
word (that is, you are no longer allowed to call a variable "to").

OK, so I renamed "to" to "xto" in your CSV file and tried again.
Next problem: after doing

 smpl sysvars --no-missing

there was still a problem with missing values.  How could that be?
The trouble was that after sub-sampling, gretl was "helpfully"
trying to reconstitute a balanced panel by inserting some padding
rows.  In most cases this is in fact helpful, but when the
"--no-missing" option is given with "smpl" it is clearly not
right. That is now fixed.

With the various fixes in place, the following will do system
estimation on your data:

<script>
open fin_dev_v1.csv --quiet
setobs 26 1.1 --stacked-time-series

# in case we want to keep track of panel structure
genr unit
genr time

list sysvars = pf gdpr ko pcr gdpc efw xto fdi
smpl sysvars --no-missing

pansys <- system
 equation pf 0 gdpr ko pcr
 equation pcr 0 gdpc efw xto pf fdi
 endog pf pcr
end system

estimate pansys method=ols
estimate pansys method=tsls
estimate pansys method=3sls
</script>

Allin Cottrell

Reply via email to