Esempio n. 1
0
    def test_valuecount(self):
        for a, expected_b in (
            [[[1, 1, 1, 1], [0.1, 0.2, 0.3, 0.4]], [[1], [1]]],
            [[[1, 1, 1, 2], [0.1, 0.2, 0.3, 0.4]], [[1, 2], [0.6, 0.4]]],
            [[[0, 1, 1, 1], [0.1, 0.2, 0.3, 0.4]], [[0, 1], [0.1, 0.9]]],
            [[[0, 1, 1, 2], [0.1, 0.2, 0.3, 0.4]], [[0, 1, 2], [0.1, 0.5,
                                                                0.4]]],
            [[[0, 1, 2, 3], [0.1, 0.2, 0.3, 0.4]], None],
            [[[0], [0.1]], None],
            [np.ones((2, 1)), None],
        ):
            a = np.array(a)
            b = _valuecount.valuecount(a)
            if expected_b is not None:
                np.testing.assert_almost_equal(b, expected_b)
            else:
                np.testing.assert_almost_equal(b, a)

        for value in (
            [np.array([[0, 1], [2, 3]])],
            [np.ones(2)],
            [np.ones((3, 3))],
                None,
        ):
            self.assertRaises(TypeError, _valuecount.valuecount, value)
Esempio n. 2
0
    def test_valuecount(self):
        a = np.array([[1, 1, 1, 1], [0.1, 0.2, 0.3, 0.4]])
        b = _valuecount.valuecount(a)
        np.testing.assert_almost_equal(b, [[1], [1]])

        a = np.array([[1, 1, 1, 2], [0.1, 0.2, 0.3, 0.4]])
        b = _valuecount.valuecount(a)
        np.testing.assert_almost_equal(b, [[1, 2], [0.6, 0.4]])

        a = np.array([[0, 1, 1, 2], [0.1, 0.2, 0.3, 0.4]])
        b = _valuecount.valuecount(a)
        np.testing.assert_almost_equal(b, [[0, 1, 2], [0.1, 0.5, 0.4]])

        a = np.array([[0, 1, 2, 3], [0.1, 0.2, 0.3, 0.4]])
        b = _valuecount.valuecount(a)
        np.testing.assert_almost_equal(b, a)

        a = np.array([[0], [0.1]])
        b = _valuecount.valuecount(a)
        np.testing.assert_almost_equal(b, a)

        a = np.ones((2, 1))
        b = _valuecount.valuecount(a)
        np.testing.assert_almost_equal(b, a)

        a = np.array([[0, 1], [2, 3]])
        self.assertRaises(ValueError, _valuecount.valuecount, a)

        a = np.ones(2)
        self.assertRaises(ValueError, _valuecount.valuecount, a)

        a = np.ones((3, 3))
        self.assertRaises(ValueError, _valuecount.valuecount, a)

        self.assertRaises(TypeError, _valuecount.valuecount, None)
Esempio n. 3
0
    def test_valuecount(self):
        for a, expected_b in ([[[1, 1, 1, 1], [0.1, 0.2, 0.3, 0.4]], [[1], [1]]],
                              [[[1, 1, 1, 2], [0.1, 0.2, 0.3, 0.4]], [[1, 2], [0.6, 0.4]]],
                              [[[0, 1, 1, 1], [0.1, 0.2, 0.3, 0.4]], [[0, 1], [0.1, 0.9]]],
                              [[[0, 1, 1, 2], [0.1, 0.2, 0.3, 0.4]], [[0, 1, 2], [0.1, 0.5, 0.4]]],
                              [[[0, 1, 2, 3], [0.1, 0.2, 0.3, 0.4]], None],
                              [[[0], [0.1]], None],
                              [np.ones((2, 1)), None]):
            a = np.array(a)
            b = _valuecount.valuecount(a)
            if expected_b is not None:
                np.testing.assert_almost_equal(b, expected_b)
            else:
                np.testing.assert_almost_equal(b, a)

        for value in ([np.array([[0, 1], [2, 3]])],
                      [np.ones(2)],
                      [np.ones((3, 3))],
                      None):
            self.assertRaises(TypeError, _valuecount.valuecount, value)