Trivariate probit model using the GHK simulator
triprobit ( depvar1 = varlist1 [, noconstant]) (depvar2 = varlist2 [, noconstant] ) ( depvar3 = varlist3 [, noconstant] ) [weight] [if exp] [in range] [, robust cluster(varname) draws(#) seed(#) noinit maximize_options]
pweights, fweights, aweights, and iweights are allowed; see help weights.
Description
triprobit estimates simulated maximum-likelihood three-equation probit models using the GHK smooth recursive simulator.
The simulated maximum likelihood technique consists in simulating the multivariate normal integrals which are involved in the likelihhod equation. The simulated probabilities are fed into the likelihood function which is then maximized using traditional techniques. See Greene (2000, pp 184-185) for a description of the simulation algorithm used here.
triprobit performs a likelihood-ratio test of no correlation between the equations.
Warning: due to the estimation technique, convergence can be very slow in large samples (and/or with a large number of draws)
Options
robust specifies that the Huber/White/sandwich estimator of variance is to be used in place of the traditional calculation; see [U] 23.11 Obtaining robust variance estimates. robust combined with cluster() allows observations which are not independent within cluster (although they must be independent between clusters). If you specify pweights, robust is implied.
cluster(varname) specifies that the observations are independent across groups (clusters) but not necessarily within groups. varname specifies to which group each observation belongs; e.g., cluster(personid) in data with repeated observations on individuals. See [U] 23.11 Obtaining robust variance estimates. cluster() can be used with pweights to produce estimates for unstratified cluster-sampled data. Specifying cluster() implies robust.
draws specifies the number of draws to be used in the simulation process. Default is 25, which is usually considered as a reasonable number of draws to make.
seed specifies the seed to be set in the simulation process, default is 123456789
noinit prevents that parameters values from three independant probits are specified as starting values for the estimation process.
maximize_options control the maximization process; see help maximize.
Saved results
In addition to the results saved by maximize (see [R] maximize), triprobit also saves the following results.
e(ll_c) stores the likelihood value of the comparison model
e(chi2_c) stores the chi2 statistic of the LR test against the comparison model
e(rho12) stores the estimated correlation coefficient between equation 1 and equation 2
e(rho12_se) stores the estimated standard-error of the correlation coefficient between equation 1 and equation 2
e(rho13) stores the estimated correlation coefficient between equation 1 and equation 3
e(rho13_se) stores the estimated standard-error of the correlation coefficient between equation 1 and equation 3
e(rho23) stores the estimated correlation coefficient between equation 2 and equation 3
e(rho23_se) stores the estimated standard-error of the correlation coefficient between equation 2 and equation 3
e(draws) stores the number of draws used in the simulation
e(seed) stores the seed which is set for the simulation
e(depvar) stores the names of the dependat variables
e(cmd) stores the command name (i.e: triprobit)
Note
rho12 represents the correlation coefficient between equation 1 and equation 2
rho13 represents the correlation coefficient between equation 1 and equation 3
rho23 represents the correlation coefficient between equation 2 and equation 3
Examples
. triprobit (y1 = x1 x2 x3) (y2 = z1 z2 z3) (y3 = v1 v2 v3), draws(30)
Also see
On-line: help for biprobit probit
References