ivpml function

Estimate Instrumental Variable Probit model by Maximum Likelihood.

Estimate Instrumental Variable Probit model by Maximum Likelihood.

Estimation of Probit model with one endogenous and continuous variable by Maximum Likelihood.

ivpml(formula, data, messages = TRUE, ...) ## S3 method for class 'ivpml' terms(x, ...) ## S3 method for class 'ivpml' model.matrix(object, ...) ## S3 method for class 'ivpml' estfun(x, ...) ## S3 method for class 'ivpml' bread(x, ...) ## S3 method for class 'ivpml' vcov(object, ...) ## S3 method for class 'ivpml' df.residual(object, ...) ## S3 method for class 'ivpml' coef(object, ...) ## S3 method for class 'ivpml' logLik(object, ...) ## S3 method for class 'ivpml' print(x, ...) ## S3 method for class 'ivpml' summary(object, eigentol = 1e-12, ...) ## S3 method for class 'summary.ivpml' print(x, digits = max(3, getOption("digits") - 2), ...) ## S3 method for class 'ivpml' predict(object, newdata = NULL, type = c("xb", "pr", "stdp"), asf = TRUE, ...)

Arguments

  • formula: a symbolic description of the model of the form y ~ x | z where y is the binary dependent variable, x includes the exogenous and the endogenous continuous variable, and z is the complete set of instruments.
  • data: the data of class data.frame.
  • messages: if TRUE, then additional messages for the estimation procedure are displayed.
  • ...: arguments passed to maxLik.
  • x, object: an object of class ivpml.
  • eigentol: the standard errors are only calculated if the ratio of the smallest and largest eigenvalue of the Hessian matrix is less than eigentol. Otherwise the Hessian is treated as singular.
  • digits: the number of digits.
  • newdata: optionally, a data frame in which to look for variables with which to predict.
  • type: the type of prediction required. The default, type = xb, is on the linear prediction. If type = pr, the predicted probabilities of a positive outcome is returned. Finally, if type = stdp the standard errors of the linear predictions for each individual is returned.
  • asf: if TRUE, the average structural function is used. This option is not allowed with xb or stdp.

Details

The IV probit for cross-sectional data has the following structure:

y1i=xiβ+γy2i+ϵi, y_{1i}^* = x_i^\top\beta + \gamma y_{2i}+ \epsilon_i,

with

y2i=ziδ+υi, y_{2i} = z_i^\top\delta + \upsilon_i,

where y1iy_{1i}^* is the latent (unobserved) dependent variable for individual i=1,...,Ni = 1,...,N; y2iy_{2i} is the endogenous continuous variable; ziz_i is the vector of exogenous variables which also includes the instruments for y2iy_{2i}; and (ϵ,υ)(\epsilon, \upsilon) are normal jointly distributed.

The model is estimated using the maxLik function from maxLik package using analytic gradient.

Examples

# Data library("AER") data("PSID1976") PSID1976$lfp <- as.numeric(PSID1976$participation == "yes") PSID1976$kids <- with(PSID1976, factor((youngkids + oldkids) > 0, levels = c(FALSE, TRUE), labels = c("no", "yes"))) # IV probit model by MLE # (nwincome is endogenous and heducation is the additional instrument) PSID1976$nwincome <- with(PSID1976, (fincome - hours * wage)/1000) fiml.probit <- ivpml(lfp ~ education + experience + I(experience^2) + age + youngkids + oldkids + nwincome | education + experience + I(experience^2) + age + youngkids + oldkids + heducation, data = PSID1976) summary(fiml.probit)

References

Greene, W. H. (2012). Econometric Analysis. 7 edition. Prentice Hall.

Author(s)

Mauricio Sarrias.

  • Maintainer: Mauricio Sarrias
  • License: GPL (>= 2)
  • Last published: 2023-03-10