tsls function

Two-Stage Least Squares

Two-Stage Least Squares

Fits a regression equation, such as an equation in a structural-equation model, by two-stage least squares. This is equivalent to direct instrumental-variables estimation when the number of instruments is equal to the number of predictors.

## S3 method for class 'formula' tsls(formula, instruments, data, subset, weights, na.action, contrasts=NULL, ...) ## Default S3 method: tsls(y, X, Z, w, names=NULL, ...) ## S3 method for class 'tsls' print(x, ...) ## S3 method for class 'tsls' summary(object, digits=getOption("digits"), ...) ## S3 method for class 'summary.tsls' print(x, ...) ## S3 method for class 'tsls' anova(object, model.2, s2, dfe, ...) ## S3 method for class 'tsls' fitted(object, ...) ## S3 method for class 'tsls' residuals(object, ...) ## S3 method for class 'tsls' coef(object, ...) ## S3 method for class 'tsls' vcov(object, ...)

Arguments

  • formula: model formula for structural equation to be estimated; a regression constant is implied if not explicitly omitted.

  • instruments: one-sided model formula specifying instrumental variables.

  • data: an optional data frame containing the variables in the model. By default the variables are taken from the environment from which tsls is called.

  • subset: an optional vector specifying a subset of observations to be used in fitting the model.

  • weights, w: an optional vector of weights to be used in the fitting process; if specified should be a non-negative numeric vector with one entry for each observation, to be used to compute weighted 2SLS estimates.

  • na.action: a function that indicates what should happen when the data contain NAs. The default is set by the na.action option.

  • contrasts: an optional list. See the contrasts.arg argument of model.matrix.default.

  • y: Response-variable vector.

  • X: Matrix of predictors, including a constant (if one is in the model).

  • Z: Matrix of instrumental variables, including a constant (if one is in the model).

  • names: optional character vector of names for the columns of the X matrix.

  • x, object, model.2: objects of class tsls returned by tsls.formula

    (or of class summary.tsls), for anova

    containing nested models to be compared by an incremental FF-test. One model should be nested in the other; the order of models is immaterial.

  • s2: an optional estimate of error variance for the denominator of the FF-test. If missing, the error-variance estimate is taken from the larger model.

  • dfe: optional error degrees of freedom, to be specified when an estimate of error variance is given.

  • digits: number of digits for summary output.

  • ...: arguments to be passed down.

Returns

tsls.formula returns an object of class tsls, with the following components: - n: number of observations.

  • p: number of parameters.

  • coefficients: parameter estimates.

  • V: estimated covariance matrix of coefficients.

  • s: residual standard error.

  • residuals: vector of residuals.

  • response: vector of response values.

  • X: model matrix.

  • Z: instrumental-variables matrix.

  • response.name: name of response variable, or expression evaluating to response.

  • formula: model formula.

  • instruments: one-sided formula for instrumental variables.

References

Fox, J. (1979) Simultaneous equation models and two-stage least-squares. In Schuessler, K. F. (ed.) Sociological Methodology 1979, Jossey-Bass.

Greene, W. H. (1993) Econometric Analysis, Second Edition, Macmillan.

Author(s)

John Fox jfox@mcmaster.ca

See Also

sem

Examples

summary(tsls(Q ~ P + D, ~ D + F + A, data=Kmenta)) # demand equation summary(tsls(Q ~ P + F + A, ~ D + F + A, data=Kmenta)) # supply equation anova(tsls(Q ~ P + F + A, ~ D + F + A, data=Kmenta), tsls(Q ~ 1, ~ D + F + A, data=Kmenta))