示例#1
0
 def test_score_func(self):
     with pytest.raises(TypeError):
         kbest = SelectKBest(score_func=10, k=10)
         kbest.fit(X_class, y_reg)
     with pytest.raises(TypeError):
         kbest = SelectKBest(score_func="chi2", k=10)
         kbest.fit(X_class, y_reg)
示例#2
0
    def test_default_score_func(self):
        kbest = SelectKBest(k=10)
        kbest.fit(X_reg, y_reg)
        assert kbest.score_func.__name__ == f_regression.__name__

        kbest = SelectKBest()
        kbest.fit(X_class, y_class)
        assert kbest.score_func.__name__ == f_classif.__name__
示例#3
0
    def test_default_score_func(self):
        kbest = SelectKBest()
        kbest.fit({"k": 10, "X": X_reg, "y": y_reg})
        assert kbest.score_func.__name__ == f_regression.__name__

        kbest = SelectKBest()
        kbest.fit({"X": X_class, "y": y_class})
        assert kbest.score_func.__name__ == f_classif.__name__
 def __init__(
     self,
     train_df_path=None,
     test_df_path=None,
     steps=None,
     config_file=None,
     params=None,
     custom_reader=None,
 ):
     steps = [
         Parser().parse_dataset,
         NullValuesHandler().execute,
         Encoder().encode,
         HandleOutlier().handle_outliers,
         Scaler().execute,
         SelectKBest().fit_transform,
         Split().train_test_split,
     ]
     super().__init__(
         train_df_path=train_df_path,
         test_df_path=test_df_path,
         steps=steps,
         config_file=config_file,
         params=params,
         custom_reader=custom_reader,
     )
示例#5
0
 def test_score_func(self):
     with pytest.raises(TypeError):
         kbest = SelectKBest()
         kbest.fit({"score_func": 10, "k": 10, "X": X_class, "y": y_reg})
     with pytest.raises(TypeError):
         kbest = SelectKBest()
         kbest.fit({
             "score_func": "chi2",
             "k": 10,
             "X": X_class,
             "y": y_reg
         })
示例#6
0
def test_transform_without_fit():
    kbest = SelectKBest()
    with pytest.raises(ValueError):
        kbest.transform({"train_df": X_reg, "target_col": "target"})
示例#7
0
def test_default_score_func(test_input, test_output):
    kbest = SelectKBest()
    kbest.fit(params=test_input)
    assert kbest.score_func.__name__ == test_output
示例#8
0
def test_score_func(test_input):
    with pytest.raises(TypeError):
        kbest = SelectKBest()
        kbest.fit(params=test_input)
示例#9
0
def test_invalid_input():
    kbest = SelectKBest()
    with pytest.raises(TypeError):
        kbest.fit_transform({})
示例#10
0
def test_fit_transform(params, split_size):
    kbest = SelectKBest()
    kbest.fit_transform(params)
    assert params["train_df"].shape == (split_size, params["k"] + 1)
    if "test_df" in params.keys():
        assert params["test_df"].shape == (1000 - split_size, params["k"] + 1)
def test_fit_transform():
    kbest = SelectKBest()
    params = {"score_func": f_regression, "k": 5, "X": X_reg, "y": y_reg}
    kbest.fit_transform(params)
    assert params["X_best"].shape[1] == 5
def test_transform_without_fit():
    kbest = SelectKBest()
    with pytest.raises(ValueError):
        kbest.transform(X_reg)
示例#13
0
 def test_fit_transform(self):
     kbest = SelectKBest(score_func=f_regression, k=5)
     X_new = kbest.fit_transform(X_reg, y_reg)
     assert X_new.shape[1] == 5