Ejemplo n.º 1
0
 def test_fit(self):
     ranker = PercentileRankOneFeature(feature="x3")
     assert ranker.feature_importances_ is None
     ranker.fit(x=self.data["X_train"], y=self.data["y_train"])
     np.testing.assert_array_equal(
         ranker.feature_importances_, np.array([0, 0, 1, 0])
     )
Ejemplo n.º 2
0
    def test_predict_proba(self):
        for direction_value in [True, False]:
            ranker = PercentileRankOneFeature(
                feature="x3", low_value_high_score=direction_value)
            ranker.fit(x=self.data["X_train"], y=self.data["y_train"])
            results = ranker.predict_proba(self.data["X_test"])
            if direction_value:
                expected_ranks = [6, 1, 3, 0, 5, 2, 4, 5]
            else:
                expected_ranks = [0, 5, 3, 6, 1, 4, 2, 1]

            assert scores_align_with_ranks(expected_ranks, results[:, 1])
Ejemplo n.º 3
0
 def test_predict_proba(self):
     for descend_value in [True, False]:
         ranker = PercentileRankOneFeature(feature="x3",
                                           descend=descend_value)
         ranker.fit(x=self.data["X_train"], y=self.data["y_train"])
         results = ranker.predict_proba(self.data["X_test"])
         if descend_value:
             expected_results = np.array([
                 np.zeros(len(self.data["X_test"])),
                 [0.875, 0.125, 0.375, 0, 0.625, 0.25, 0.5, 0.625],
             ]).transpose()
         else:
             expected_results = np.array([
                 np.zeros(len(self.data["X_test"])),
                 [0, 0.75, 0.5, 0.875, 0.125, 0.625, 0.375, 0.125],
             ]).transpose()
         np.testing.assert_array_equal(results, expected_results)
Ejemplo n.º 4
0
 def test_predict_proba(self):
     for descend_value in [True, False]:
         ranker = PercentileRankOneFeature(feature='x3',
                                           descend=descend_value)
         ranker.fit(x=self.data['X_train'], y=self.data['y_train'])
         results = ranker.predict_proba(self.data['X_test'])
         if descend_value:
             expected_results = np.array([
                 np.zeros(len(self.data['X_test'])),
                 [.875, .125, .375, 0, .625, .25, .5, .625]
             ]).transpose()
         else:
             expected_results = np.array([
                 np.zeros(len(self.data['X_test'])),
                 [0, .75, .5, .875, .125, .625, .375, .125]
             ]).transpose()
         np.testing.assert_array_equal(results, expected_results)
Ejemplo n.º 5
0
 def test_ranking_on_unavailable_feature_raises_error(self):
     ranker = PercentileRankOneFeature(feature="x5")
     with self.assertRaises(BaselineFeatureNotInMatrix):
         ranker.fit(x=self.data["X_train"], y=self.data["y_train"])
Ejemplo n.º 6
0
 def test_fit(self):
     ranker = PercentileRankOneFeature(feature='x3')
     assert ranker.feature_importances_ == None
     ranker.fit(x=self.data['X_train'], y=self.data['y_train'])
     np.testing.assert_array_equal(ranker.feature_importances_,
                                   np.array([0, 0, 1, 0]))