Ok, here I'm back with an observation (just in case something may need to be fixed):
As Jack recommended I used the "catch" option with the probit command and the loop didnt' stop anymore at that time...but it did stop yesterday when applied to new data.
When I look at the detailed estimations into the loop, it seems that there's no problem in estimating the probit itself and gretl shows up the results normally. Which means that the error I encountered eventually has no relation with the perfect prediction symptom we suspected initially. 
So troubles should come when retrieving the $yhat series. Consequently, I tried the following "catch genr series predict_external = $yhat[,1]" and got the code error "30".
Any hint on that?
Best,
Artur


2014-05-04 23:50 GMT+02:00 artur.bala.tn <artur.bala.tn@gmail.com>:
Dear Jack,
I'm still stuck in bivariate probit models and suspect something strange going out there.
When I estimate a (highly correlated) bivariate model (providing the --robust and --cluster options) throught the GUI and try to save the $yhat matrix through the console, I got the same (not so) error message:
> The statistic you requested is not available
>>> genr series predict_external = $yhat[,1]
Instead, when I estimate the model through the console (or script) everything works fine
???
Best
Artur
 
 
 
Date: 2014-04-28 07:49
Subject: Re: [Gretl-users] bivariate probit in a loop
On Mon, 28 Apr 2014, artur.bala.tn wrote:
 
> Dear all,
 
> I'm currently estimating a bootstraped bivariate probit through a
> progressive loop and retrieve each time the $yhat matrix. At some point,
> the execution is interrupted with the "warning":
>
>
> The statistic you requested is not available
>>> genr series predict_external = $yhat[,1]
>
>
> Is there a perfect prediction symptom behind this message isn't it?
 
It could be, yes.
 
> Can one, in such a loop, skip cases where the MLE estimation is not
> technically possible?
 
Use "catch": for example,
 
<hansl>
nulldata 50
 
small = 0.25
x1 = normal()
x2 = normal()
y1 = x1 + normal()*small > 0.5
y2 = x2 > 0
 
catch biprobit y1 y2 const x1 ; const x2
err = $error
if !err
     z = $yhat
     printf "%10.3f", meanc(z)
else
     printf "Error!\n"
endif
</hansl>
 
 
-------------------------------------------------------
   Riccardo (Jack) Lucchetti
   Dipartimento di Scienze Economiche e Sociali (DiSES)
 
   Università Politecnica delle Marche
   (formerly known as Università di Ancona)
 
-------------------------------------------------------
 
 
_______________________________________________
Gretl-users mailing list