Two stage least squares estimation
Function to estimate a linear model by the two stage least squares method.
tsls(g,x,data)
g |
A formula describing the linear regression model (see details below). |
x |
The matrix of instruments (see details below). |
data |
A data.frame or a matrix with column names (Optionnal). |
Y_i = X_iβ + u_i
'tsls' returns an object of 'class' '"tsls"' which inherits from class '"gmm"'.
The functions 'summary' is used to obtain and print a summary of the results. It also compute the J-test of overidentying restriction
The object of class "gmm" is a list containing at least:
coefficients |
k\times 1 vector of coefficients |
residuals |
the residuals, that is response minus fitted values if "g" is a formula. |
fitted.values |
the fitted mean values if "g" is a formula. |
vcov |
the covariance matrix of the coefficients |
objective |
the value of the objective function \| var(\bar{g})^{-1/2}\bar{g}\|^2 |
terms |
the |
call |
the matched call. |
y |
if requested, the response used (if "g" is a formula). |
x |
if requested, the model matrix used if "g" is a formula or the data if "g" is a function. |
model |
if requested (the default), the model frame used if "g" is a formula. |
algoInfo |
Information produced by either |
Hansen, L.P. (1982), Large Sample Properties of Generalized Method of Moments Estimators. Econometrica, 50, 1029-1054,
n <- 1000 e <- arima.sim(n,model=list(ma=.9)) C <- runif(n,0,5) Y <- rep(0,n) Y[1] = 1 + 2*C[1] + e[1] for (i in 2:n){ Y[i] = 1 + 2*C[i] + 0.9*Y[i-1] + e[i] } Yt <- Y[5:n] X <- cbind(C[5:n],Y[4:(n-1)]) Z <- cbind(C[5:n],Y[3:(n-2)],Y[2:(n-3)],Y[1:(n-4)]) res <- tsls(Yt~X,~Z) res
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.