def test_compare_nonnested(self): res = self.res res2 = self.res2 # jt = jtest(fm, lm(ginv ~ ggdp + tbilrate)) # Estimate Std. Error t value Pr(>|t|) jtest = [ ("M1 + fitted(M2)", 1.591505670785873, 0.7384552861695823, 2.155182176352370, 0.032354572525314450, "*"), ("M2 + fitted(M1)", 1.305687653016899, 0.4808385176653064, 2.715438978051544, 0.007203854534057954, "**"), ] jt1 = smsdia.compare_j(res2, res) assert_almost_equal(jt1, jtest[0][3:5], decimal=13) jt2 = smsdia.compare_j(res, res2) assert_almost_equal(jt2, jtest[1][3:5], decimal=14) # Estimate Std. Error z value Pr(>|z|) coxtest = [ ("fitted(M1) ~ M2", -0.782030488930356, 0.599696502782265, -1.304043770977755, 1.922186587840554e-01, " "), ( "fitted(M2) ~ M1", -2.248817107408537, 0.392656854330139, -5.727181590258883, 1.021128495098556e-08, "***", ), ] ct1 = smsdia.compare_cox(res, res2) assert_almost_equal(ct1, coxtest[0][3:5], decimal=13) ct2 = smsdia.compare_cox(res2, res) assert_almost_equal(ct2, coxtest[1][3:5], decimal=12) # TODO should be approx # Res.Df Df F Pr(>F) encomptest = [ ("M1 vs. ME", 198, -1, 4.644810213266983, 0.032354572525313666, "*"), ("M2 vs. ME", 198, -1, 7.373608843521585, 0.007203854534058054, "**"), ] # Estimate Std. Error t value petest = [ ("M1 + log(fit(M1))-fit(M2)", -229.281878354594596, 44.5087822087058598, -5.15139, 6.201281252449979e-07), ("M2 + fit(M1)-exp(fit(M2))", 0.000634664704814, 0.0000462387010349, 13.72583, 1.319536115230356e-30), ]
def test_compare_nonnested(self): res = self.res res2 = self.res2 #jt = jtest(fm, lm(ginv ~ ggdp + tbilrate)) #Estimate Std. Error t value Pr(>|t|) jtest = [('M1 + fitted(M2)', 1.591505670785873, 0.7384552861695823, 2.155182176352370, 0.032354572525314450, '*'), ('M2 + fitted(M1)', 1.305687653016899, 0.4808385176653064, 2.715438978051544, 0.007203854534057954, '**')] jt1 = smsdia.compare_j(res2, res) assert_almost_equal(jt1, jtest[0][3:5], decimal=13) jt2 = smsdia.compare_j(res, res2) assert_almost_equal(jt2, jtest[1][3:5], decimal=14) #Estimate Std. Error z value Pr(>|z|) coxtest = [('fitted(M1) ~ M2', -0.782030488930356, 0.599696502782265, -1.304043770977755, 1.922186587840554e-01, ' '), ('fitted(M2) ~ M1', -2.248817107408537, 0.392656854330139, -5.727181590258883, 1.021128495098556e-08, '***')] ct1 = smsdia.compare_cox(res, res2) assert_almost_equal(ct1, coxtest[0][3:5], decimal=13) ct2 = smsdia.compare_cox(res2, res) assert_almost_equal(ct2, coxtest[1][3:5], decimal=12) #TODO should be approx # Res.Df Df F Pr(>F) encomptest = [('M1 vs. ME', 198, -1, 4.644810213266983, 0.032354572525313666, '*'), ('M2 vs. ME', 198, -1, 7.373608843521585, 0.007203854534058054, '**')] # Estimate Std. Error t value petest = [('M1 + log(fit(M1))-fit(M2)', -229.281878354594596, 44.5087822087058598, -5.15139, 6.201281252449979e-07), ('M2 + fit(M1)-exp(fit(M2))', 0.000634664704814, 0.0000462387010349, 13.72583, 1.319536115230356e-30)]