R: Two-Stage Least Squares

tsls {sem} | R Documentation

## 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 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 `NA`s. 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.

### 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.

### Author(s)

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

    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))

[Package sem version 3.1-13 Index]