def test_init_hac_(self): X = [] X.append(self.db.by_col("INC")) X.append(self.db.by_col("CRIME")) self.X = np.array(X).T yd2, q2 = spreg.utils.set_endog(self.y, self.X, self.w, None, None, 2, True) self.X = np.hstack((np.ones(self.y.shape), self.X)) self.X = SP.csr_matrix(self.X) gwk = libpysal.weights.Kernel.from_shapefile( libpysal.examples.get_path('columbus.shp'), k=15, function='triangular', fixed=False) base_gm_lag = BaseGM_Lag(self.y, self.X, yend=yd2, q=q2, w=self.w, w_lags=2, robust='hac', gwk=gwk) tbetas = np.array([[4.53017056e+01], [6.20888617e-01], [-4.80723451e-01], [2.83622122e-02]]) np.testing.assert_allclose(base_gm_lag.betas, tbetas) dbetas = D.se_betas(base_gm_lag) se_betas = np.array([19.08513569, 0.51769543, 0.18244862, 0.35460553]) np.testing.assert_allclose(dbetas, se_betas)
def test_init_white_(self): X = [] X.append(self.db.by_col("INC")) X.append(self.db.by_col("CRIME")) self.X = np.array(X).T base_gm_lag = GM_Lag(self.y, self.X, w=self.w, w_lags=2, robust='white') tbetas = np.array([[ 4.53017056e+01], [ 6.20888617e-01], [ -4.80723451e-01], [ 2.83622122e-02]]) np.testing.assert_allclose(base_gm_lag.betas, tbetas) dbetas = D.se_betas(base_gm_lag) se_betas = np.array([ 20.47077481, 0.50613931, 0.20138425, 0.38028295 ]) np.testing.assert_allclose(dbetas, se_betas)
def test_lag_q(self): X = np.array(self.db.by_col("INC")) X = np.reshape(X, (49,1)) yd = np.array(self.db.by_col("CRIME")) yd = np.reshape(yd, (49,1)) q = np.array(self.db.by_col("DISCBD")) q = np.reshape(q, (49,1)) reg = GM_Lag(self.y, X, w=self.w, yend=yd, q=q, w_lags=2, lag_q=False) tbetas = np.array( [[ 108.83261383], [ -0.48041099], [ -1.18950006], [ -0.56140186]]) np.testing.assert_allclose(tbetas, reg.betas) dbetas = D.se_betas(reg) se_betas = np.array([ 58.33203837, 1.09100446, 0.62315167, 0.68088777]) np.testing.assert_allclose(dbetas, se_betas)
def test_init_discbd(self): X = np.array(self.db.by_col("INC")) X = np.reshape(X, (49,1)) yd = np.array(self.db.by_col("CRIME")) yd = np.reshape(yd, (49,1)) q = np.array(self.db.by_col("DISCBD")) q = np.reshape(q, (49,1)) reg = GM_Lag(self.y, X, w=self.w, yend=yd, q=q, w_lags=2) tbetas = np.array([[ 100.79359082], [ -0.50215501], [ -1.14881711], [ -0.38235022]]) np.testing.assert_allclose(tbetas, reg.betas) dbetas = D.se_betas(reg) se_betas = np.array([ 53.0829123 , 1.02511494, 0.57589064, 0.59891744 ]) np.testing.assert_allclose(dbetas, se_betas)
def test_init_white_(self): w_lags = 2 X = [] X.append(self.db.by_col("INC")) X.append(self.db.by_col("CRIME")) self.X = np.array(X).T #yd2, q2 = spreg.utils.set_endog(self.y, self.X, self.w, None, None, w_lags, True) self.X = np.hstack((np.ones(self.y.shape),self.X)) base_gm_lag = BaseGM_Lag(self.y, self.X, w=self.w, w_lags=w_lags, robust='white') tbetas = np.array([[ 4.53017056e+01], [ 6.20888617e-01], [ -4.80723451e-01], [ 2.83622122e-02]]) np.testing.assert_allclose(base_gm_lag.betas, tbetas) dbetas = D.se_betas(base_gm_lag) se_betas = np.array([ 20.47077481, 0.50613931, 0.20138425, 0.38028295 ]) np.testing.assert_allclose(dbetas, se_betas)
def test_lag_q(self): w_lags = 2 X = np.array(self.db.by_col("INC")) self.X = np.reshape(X, (49,1)) yd = np.array(self.db.by_col("CRIME")) yd = np.reshape(yd, (49,1)) q = np.array(self.db.by_col("DISCBD")) q = np.reshape(q, (49,1)) #yd2, q2 = spreg.utils.set_endog(self.y, self.X, self.w, yd, q, w_lags, False) self.X = np.hstack((np.ones(self.y.shape),self.X)) reg = BaseGM_Lag(self.y, self.X, w=self.w, yend=yd, q=q, w_lags=w_lags, lag_q=False) tbetas = np.array( [[ 108.83261383], [ -0.48041099], [ -1.18950006], [ -0.56140186]]) np.testing.assert_allclose(tbetas, reg.betas) dbetas = D.se_betas(reg) se_betas = np.array([ 58.33203837, 1.09100446, 0.62315167, 0.68088777]) np.testing.assert_allclose(dbetas, se_betas)
def test_init_discbd(self): w_lags = 2 X = np.array(self.db.by_col("INC")) self.X = np.reshape(X, (49,1)) yd = np.array(self.db.by_col("CRIME")) yd = np.reshape(yd, (49,1)) q = np.array(self.db.by_col("DISCBD")) q = np.reshape(q, (49,1)) #yd2, q2 = spreg.utils.set_endog(self.y, self.X, self.w, yd, q, w_lags, True) self.X = np.hstack((np.ones(self.y.shape),self.X)) reg = BaseGM_Lag(self.y, self.X, w=self.w, yend=yd, q=q, w_lags=w_lags) tbetas = np.array([[ 100.79359082], [ -0.50215501], [ -1.14881711], [ -0.38235022]]) np.testing.assert_allclose(tbetas, reg.betas) dbetas = D.se_betas(reg) se_betas = np.array([ 53.0829123 , 1.02511494, 0.57589064, 0.59891744 ]) np.testing.assert_allclose(dbetas, se_betas)
def test_se_betas(self): obs = diagnostics.se_betas(reg) exp = np.array([4.73548613, 0.33413076, 0.10319868]) np.testing.assert_allclose(obs, exp, RTOL)