示例#1
0
    def test_fit_transform(self):
        """fit transform should give the same result as calling fit and
        transform separately"""

        arr = np.array([n + 1 for n in range(10)])
        np.random.shuffle(arr)

        d1 = Discretiser(method="uniform", num_buckets=4)
        d1.fit(arr)
        r1 = d1.transform(arr)

        d2 = Discretiser(method="uniform", num_buckets=4)
        r2 = d2.fit_transform(arr)

        assert np.array_equal(r1, r2)
示例#2
0
    def test_fit_transform(self):
        """fit transform should give the same result as calling fit and
        transform separately"""

        arr = np.array([n + 1 for n in range(10)])
        np.random.shuffle(arr)

        d1 = Discretiser(method="outlier", outlier_percentile=0.2)
        d1.fit(arr)
        r1 = d1.transform(arr)

        d2 = Discretiser(method="outlier", outlier_percentile=0.2)
        r2 = d2.fit_transform(arr)

        assert np.array_equal(r1, r2)
示例#3
0
    def test_fit_transform(self):
        """fit transform should give the same result as calling fit and
        transform separately"""

        arr = np.array([n + 1 for n in range(10)])
        np.random.shuffle(arr)

        d1 = Discretiser(method="percentiles",
                         percentile_split_points=[0.10, 0.40, 0.85])
        d1.fit(arr)
        r1 = d1.transform(arr)

        d2 = Discretiser(method="percentiles",
                         percentile_split_points=[0.10, 0.40, 0.85])
        r2 = d2.fit_transform(arr)

        assert np.array_equal(r1, r2)
示例#4
0
    def test_fit_transform_raises_error(self):
        """since numeric split points are provided, fit will not do anything"""

        d = Discretiser(method="fixed", numeric_split_points=[1])
        with pytest.raises(RuntimeError):
            d.fit_transform(np.array([1]))