Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
st: RE: initial values in ivprobit
From
"Brian P. Poi" <[email protected]>
To
<[email protected]>
Subject
st: RE: initial values in ivprobit
Date
Sat, 15 Jan 2011 10:30:12 -0500
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of xueliansharon
Sent: Friday, January 14, 2011 10:54 AM
To: [email protected]
Subject: st: initial values in ivprobit
Dear all,
I want to estimate an ivprobit model, and I need to specify the initial
values using a matrix coeff, I always got an error message as : "initial
vector: extra parameter r1 found", How can I deal with this problem?
The following are my codes (using nlsw88 as an example):
est clear
sysuse nlsw88, clear
matrix define coeff=(1\2)
ivprobit collgrad tenure (wage=smsa grade), from(coeff)
I know that in the "from" option, I could specify numbers for initial values
directly rather than a matrix, but in my own program, I need to use a matrix
as initial values.
Many thanks.
Best,
Sharon
--
To figure out how to specify initial values as a matrix, the easiest thing
to do is first fit a simple model and examine the coefficient vector e(b).
Your initial value matrix will be the same size as e(b), and the values will
need to appear in the same order. In the case of -ivprobit-, you'll also
want to add the option 'first' to see the "first-stage" coefficients; that
makes figuring out what is in e(b) easier.
. webuse laborsup
. ivprobit fem_work fem_educ kids (other_inc = male_educ), first
(output omitted)
. matrix list e(b)
e(b)[1,10]
fem_work: fem_work: fem_work: fem_work: other_inc: other_inc:
other_inc fem_educ kids _cons fem_educ kids
y1 -.05427563 .21111102 -.18209291 .36720829 .33518665 .83290555
other_inc: other_inc: athrho: lnsigma:
male_educ _cons _cons _cons
y1 2.8452531 9.8725609 .39078578 2.8133833
Here we see that the coefficients for the probit equation come first,
followed by the coefficients for the (loosely speaking) first-stage
regression equation, then the hyperbolic arctangent of rho and the log of
sigma. Those last two parameters are defined in the Methods and Formulas
section of the reference manual entry for -ivprobit-. The order of the
parameters for the probit equation is <endogenous variable>, <exogenous
variables>, constant and for the first-stage regression <exogenous variables
in probit>, <additional instruments>, constant.
Looking at the model you specified
. ivprobit collgrad tenure (wage=smsa grade)
The probit equation will have 3 parameters (for wage, tenure, and a
constant), and the regression equation will have 4 parameters (for tenure,
smsa, grade, and a constant), so your initial value matrix will need to have
3 + 4 + 2 = 9 columns.
Having said all that, I'm not sure specifying different initial values will
help, as the ones -ivprobit- uses by default are probably as good as any.
-ivprobit- uses OLS to get the first-stage initial values (and sigma) and
probit ignoring endogeneity to get initial values for the probit equation
parameters. If your model doesn't converge on its own, I'd consider trying
a simpler specification rather than playing with initial values.
-- Brian Poi
-- [email protected]
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/