def test_BZ_ln(self): model = apc.Model() model.data_from_df(apc.loss_BZ(), data_format='CL') model.fit('log_normal_response', 'AC') model.simulate(repetitions=10) model.simulate(repetitions=10, fitted_values=model.fitted_values * 10) model.simulate(repetitions=10, sigma2=10)
def test_BZ(self): model = apc.Model() model.data_from_df(apc.loss_BZ(), data_format='CL') model.fit('od_poisson_response', 'AC') model.forecast(method='n_poisson') fc = model.forecast(attach_to_self=False) self.assertEqual(fc['method'], 't_odp') model.forecast([0.9])
def test_BZ(self): model = apc.Model() model.data_from_df(apc.loss_BZ(), data_format='CL') model.fit('od_poisson_response', 'APC') sub_models = [model.sub_model(per_from_to=(1977,1981)), model.sub_model(per_from_to=(1982,1984)), model.sub_model(per_from_to=(1985,1987))] f = apc.f_test(model, sub_models) self.assertEqual(round(f['F_stat'], 3), 1.855) self.assertEqual(round(f['p_value'], 3), 0.133)
def test_BZ(self): r = apc.r_test(apc.loss_BZ(), 'gen_log_normal_response', 'APC', R_stat='ls', R_dist='wls_ql', data_format='CL') self.assertEqual(round(r['R_stat'], 5), 113.92399) self.assertEqual(round(r['p_value'], 5), 0.01754) self.assertEqual(round(r['power_at_R'], 5), 0.86713)
def test_BZ_gln(self): model = apc.Model() model.data_from_df(apc.loss_BZ(), data_format='CL') model.fit(family='gen_log_normal_response', predictor='APC') self.assertAlmostEqual(model.deviance, -287.459, 3) self.assertTrue( np.allclose( model.parameters.sum().values, np.array([11.83624119, 1.26201587, 312.66337107, 12.1751463]))) self.assertAlmostEqual(model.fitted_values.sum(), 10214114.721, 3)
def test_BZ(self): model = apc.Model() model.data_from_df(apc.loss_BZ(), data_format='CL') self.assertEqual(model.data_format, 'CL') self.assertEqual(model.I, 11) self.assertEqual(model.J, 11) self.assertEqual(model.K, 11) self.assertEqual(model.L, 0) self.assertEqual(model.n, 66) self.assertEqual(model.time_adjust, 0) self.assertAlmostEqual(model.data_vector.sum()['response'], 10221194.0, 3)
def test_BZ(self): model = apc.Model() model.data_from_df(apc.loss_BZ(), data_format='CL') model.fit('od_poisson_response', 'APC') sub_models = [ model.sub_model(per_from_to=(1977, 1981)), model.sub_model(per_from_to=(1982, 1984)), model.sub_model(per_from_to=(1985, 1987)) ] bartlett = apc.bartlett_test(sub_models) self.assertEqual(round(bartlett['B'], 3), 1.835) self.assertEqual(round(bartlett['LR'], 3), 2.235) self.assertEqual(round(bartlett['C'], 3), 1.218) self.assertEqual(round(bartlett['m'], 3), 3) self.assertEqual(round(bartlett['p_value'], 3), 0.4)
def test_BZ_ln(self): model = apc.Model() model.data_from_df(apc.loss_BZ()) model.fit('log_normal_response', 'APC') model.identify() self.assertTrue( np.allclose( model.parameters_adhoc.sum().values, np.array([11.52208551, 1.92807476, 309.55066566, 16.5398655]))) self.assertTrue( np.allclose( model.identify('sum_sum', attach_to_self=False).sum().values, np.array([-17.03573805, 5.27028714, 18.73830563, 19.19957677])))
def test_BZ(self): model = apc.Model() model.data_from_df(apc.loss_BZ(), data_format='CL') model.fit('log_normal_response', 'AC') model.forecast() self.assertEqual(model.forecasts['method'], 't_gln')