Learn R Programming

sem (version 3.1-16)

tsls: Two-Stage Least Squares

Description

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.

Usage

# S3 method for formula
tsls(formula, instruments, data, subset, weights, 
	na.action, contrasts=NULL, ...)
# S3 method for default
tsls(y, X, Z, w, names=NULL, ...)

# S3 method for tsls print(x, ...) # S3 method for tsls summary(object, digits=getOption("digits"), ...) # S3 method for summary.tsls print(x, ...) # S3 method for tsls anova(object, model.2, s2, dfe, ...)

# S3 method for tsls fitted(object, ...) # S3 method for tsls residuals(object, ...) # S3 method for tsls coef(object, ...) # S3 method for tsls vcov(object, ...)

Value

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.

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 \(F\)-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 \(F\)-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.

Author

John Fox jfox@mcmaster.ca

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.

See Also

sem

Examples

Run this code
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))

Run the code above in your browser using DataLab