jive2 Module

weak_instruments.jive2.JIVE2(Y: ndarray[Any, dtype[float64]], X: ndarray[Any, dtype[float64]], Z: ndarray[Any, dtype[float64]], talk: bool = False) JIVE2Result

Calculates the JIVE2 estimator using a two-pass approach recommended by Angrist, Imbens, and Kreuger (1999) in Jackknife IV estimation.

Parameters:
  • Y (NDArray[np.float64]) – A 1-D numpy array of the dependent variable (N x 1).

  • X (NDArray[np.float64]) – A 2-D numpy array of the endogenous regressors (N x L).

  • Z (NDArray[np.float64]) – A 2-D numpy array of the instruments (N x K), where K > L.

  • talk (bool) – If True, provides detailed output for teaching purposes. Default is False.

Returns:

A custom result object containing the JIVE2 estimates, leverage values, and fitted values.

Return type:

JIVE2Result

class weak_instruments.jive2.JIVE2Result(beta: ndarray[Any, dtype[float64]], leverage: ndarray[Any, dtype[float64]], fitted_values: ndarray[Any, dtype[float64]])

Bases: object