Example 22.3 Bivariate Probit Analysis

This example shows how to estimate a bivariate probit model. Note the INIT statement in the following program, which sets the initial values for some parameters in the optimization:

data a;
   keep y1 y2 x1 x2;
   do i = 1 to 500;
      x1 = rannor( 19283 );
      x2 = rannor( 19283 );
      u1 = rannor( 19283 );
      u2 = rannor( 19283 );
      y1l = 1 + 2 * x1 + 3 * x2 + u1;
      y2l = 3 + 4 * x1 - 2 * x2 + u1*.2 + u2;
      if ( y1l > 0 ) then y1 = 1;
      else                y1 = 0;
      if ( y2l > 0 ) then y2 = 1;
      else                y2 = 0;
      output;
   end;
run;
/*-- Bivariate Probit --*/
proc qlim data=a method=qn;
   init y1.x1 2.8, y1.x2 2.1, _rho .1;
   model y1 = x1 x2;
   model y2 = x1 x2;
   endogenous y1 y2 ~ discrete;
run;

The output of the QLIM procedure is shown in Output 22.3.1.

Output 22.3.1 Bivariate Probit Analysis Results
Estimating a Tobit model

The QLIM Procedure

Model Fit Summary
Number of Endogenous Variables 2
Endogenous Variable y1 y2
Number of Observations 500
Log Likelihood -134.90796
Maximum Absolute Gradient 3.23363E-7
Number of Iterations 17
Optimization Method Quasi-Newton
AIC 283.81592
Schwarz Criterion 313.31817

Parameter Estimates
Parameter DF Estimate Standard Error t Value Approx
Pr > |t|
y1.Intercept 1 1.003639 0.153678 6.53 <.0001
y1.x1 1 2.244374 0.256062 8.76 <.0001
y1.x2 1 3.273441 0.341581 9.58 <.0001
y2.Intercept 1 3.621164 0.457173 7.92 <.0001
y2.x1 1 4.551525 0.576547 7.89 <.0001
y2.x2 1 -2.442769 0.332295 -7.35 <.0001
_Rho 1 0.144097 0.336459 0.43 0.6685