linearmodels.system.covariance.GMMHomoskedasticCovariance

class linearmodels.system.covariance.GMMHomoskedasticCovariance(x: list[ndarray], z: list[ndarray], eps: ndarray[tuple[int, ...], dtype[float64]], w: ndarray[tuple[int, ...], dtype[float64]], *, sigma: ndarray | None = None, debiased: bool = False, constraints: LinearConstraint | None = None)[source]

Covariance estimator for IV system estimation with homoskedastic data.

Parameters:
x: list[ndarray]

Regressors of each equation, with shape (nobs, k_i) for equation i.

z: list[ndarray]

Instruments of each equation, with shape (nobs, nz_i) for equation i.

eps: ndarray[tuple[int, ...], dtype[float64]]

Residuals with shape (nobs, neq), where each column corresponds to an equation in the system.

w: ndarray[tuple[int, ...], dtype[float64]]

Weighting matrix used in estimation, with shape (nmoments, nmoments).

sigma: ndarray | None = None

Residual covariance used in estimation, with shape (neq, neq). It is required by GMMHomoskedasticCovariance, which uses it to estimate the covariance of the moment conditions. The other estimators ignore it.

debiased: bool = False

Flag indicating to apply a small sample adjustment. The default is False.

constraints: LinearConstraint | None = None

Constraints used in estimation. The default is no constraints.

Notes

The covariance is estimated by

\[(X'ZW^{-1}Z'X)^{-1}(X'ZW^{-1}\Omega W^{-1}Z'X)(X'ZW^{-1}Z'X)^{-1}\]

where \(\Omega = W = Z'(\Sigma \otimes I_N)Z\) where m is the number of moments in the system

Methods

Properties

cov

Covariance of the parameter estimates.

cov_config

Configuration of the covariance estimator.