linearmodels.iv.covariance.HeteroskedasticCovariance

class linearmodels.iv.covariance.HeteroskedasticCovariance(x: ndarray[tuple[int, ...], dtype[float64]], y: ndarray[tuple[int, ...], dtype[float64]], z: ndarray[tuple[int, ...], dtype[float64]], params: ndarray[tuple[int, ...], dtype[float64]], debiased: bool = False, kappa: int | float = 1, extra_df: int = 0)[source]

Covariance estimation for heteroskedastic data.

Parameters:
x: ndarray[tuple[int, ...], dtype[float64]]

Model regressors (nobs by nvar).

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

Series modeled (nobs by 1).

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

Instruments used for endogenous regressors (nobs by ninstr).

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

Estimated model parameters (nvar by 1).

debiased: bool = False

Flag indicating whether to use a small-sample adjustment. The default is False.

kappa: int | float = 1

Value of kappa in the k-class estimator. The default is 1.

extra_df: int = 0

Degrees of freedom that the model uses in addition to the nvar columns of x, for example the absorbed effects of AbsorbingLS. The default is 0. It is only used if debiased is True, when n / (n-k) becomes n / (n-k-extra_df).

Raises:

ValueError – If the number of rows of x, y and z differ, if x and params have incompatible dimensions or if debiased is True and there are no more observations than the columns of x plus extra_df.

Notes

Covariance is estimated using

\[n^{-1} V^{-1} \hat{S} V^{-1}\]

where

\[\hat{S} = n^{-1} \sum_{i=1}^n \hat{\epsilon}_i^2 \hat{x}_i^{\prime} \hat{x}_i\]

where \(\hat{\gamma}=(Z'Z)^{-1}(Z'X)\) and \(\hat{x}_i = z_i\hat{\gamma}\). If debiased is true, then \(S\) is scaled by n / (n-k-df), where k is the number of columns of x and df is extra_df.

\[V = n^{-1} X'Z(Z'Z)^{-1}Z'X\]

where \(X\) is the matrix of variables included in the model and \(Z\) is the matrix of instruments, including exogenous regressors.

Methods

Properties

config

Return the options of the covariance estimator as a dict.

cov

Return the covariance of the estimated parameters.

debiased

Return a flag indicating if the covariance is debiased.

s

Return the heteroskedasticity-robust score covariance estimate.

s2

Return the variance of the residuals, adjusted if debiased.