예제 #1
0
 def test_process__setattr__(self):
     lm = LinearRegression()
     lm_strategy = AdapterForFitPredictAdaptee(lm)
     step = Process(lm_strategy)
     self.assertEqual(step.copy_X, True)
     step.copy_X = False
     self.assertEqual(step.copy_X, False)
     self.assertEqual('copy_X' in dir(step), False)
예제 #2
0
 def test_process__fit_lm(self):
     X = self.X
     y = self.y
     lm = LinearRegression()
     stepstrategy = AdapterForFitPredictAdaptee(lm)
     step = Process(stepstrategy)
     self.assertEqual(hasattr(step, 'coef_'), False)
     result = step.fit(X=X, y=y)
     self.assertEqual(hasattr(step, 'coef_'), True)
     self.assertEqual(step, result)
예제 #3
0
 def test_process__get_params(self):
     lm = LinearRegression()
     lm_strategy = AdapterForFitPredictAdaptee(lm)
     step = Process(lm_strategy)
     result_lm = step.get_params()
     self.assertEqual(result_lm, {
         'copy_X': True,
         'fit_intercept': True,
         'n_jobs': 1,
         'normalize': False
     })
예제 #4
0
 def test_process__fit_dbscan(self):
     X = self.X
     y = self.y
     db = DBSCAN()
     stepstrategy = AdapterForAtomicFitPredictAdaptee(db)
     step = Process(stepstrategy)
     self.assertEqual(hasattr(step, 'core_sample_indices_'), False)
     result_fit = step.fit(X=X)
     self.assertEqual(hasattr(step, 'core_sample_indices_'), False)
     self.assertEqual(step, result_fit)
     result_predict = step.predict(X=X)['predict']
     self.assertEqual(hasattr(step, 'core_sample_indices_'), True)
     self.assertEqual(result_predict.shape, (self.size, ))
예제 #5
0
    def test_process__predict(self):
        X = self.X
        y = self.y
        lm = LinearRegression()
        gm = GaussianMixture()
        lm_strategy = AdapterForFitPredictAdaptee(lm)
        gm_strategy = AdapterForFitPredictAdaptee(gm)
        step_lm = Process(lm_strategy)
        step_gm = Process(gm_strategy)

        step_lm.fit(X=X, y=y)
        step_gm.fit(X=X)

        result_lm = step_lm.predict(X=X)
        result_gm = step_gm.predict(X=X)

        self.assertEqual(list(result_lm.keys()), ['predict'])
        self.assertEqual(sorted(list(result_gm.keys())),
                         sorted(['predict', 'predict_proba']))
예제 #6
0
    def test_process__get_fit_signature(self):
        lm = LinearRegression()
        gm = GaussianMixture()
        lm_strategy = AdapterForFitPredictAdaptee(lm)
        gm_strategy = AdapterForFitPredictAdaptee(gm)
        step_lm = Process(lm_strategy)
        step_gm = Process(gm_strategy)
        result_lm = step_lm._get_fit_signature()
        result_gm = step_gm._get_fit_signature()

        self.assertEqual(result_lm, ['X', 'y', 'sample_weight'])
        self.assertEqual(result_gm, ['X', 'y'])
예제 #7
0
 def test_process__repr__(self):
     lm = LinearRegression()
     lm_strategy = AdapterForFitPredictAdaptee(lm)
     step = Process(lm_strategy)
     result = step.__repr__()
     self.assertEqual(result, lm.__repr__())
예제 #8
0
 def test_process__get_predict_signature_lm(self):
     lm = LinearRegression()
     lm_strategy = AdapterForFitPredictAdaptee(lm)
     step_lm = Process(lm_strategy)
     result_lm = step_lm._get_predict_signature()
     self.assertEqual(result_lm, ['X'])
예제 #9
0
 def test_process__init(self):
     lm = LinearRegression()
     stepstrategy = AdapterForFitPredictAdaptee(lm)
     step = Process(stepstrategy)
     self.assertEqual(step._strategy, stepstrategy)