Ejemplo n.º 1
0
    def test_unary_list_with_key(self):
        dataset = tabular.from_data(('a', [2, 7, 1, 8, 4, 5, 9, 0, 3, 6]))

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(dataset.keys, ('a', ))
        self.assertIsNone(dataset.mode)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, [7, 8])
        self.assertIsInstance(output, list)
Ejemplo n.º 2
0
    def test_unary_callable_unary(self):
        dataset = tabular.from_data(('a', lambda i: i * i), size=10)

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(dataset.keys, ('a', ))
        self.assertIsNone(dataset.mode)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, [1, 9])
        self.assertIsInstance(output, list)
Ejemplo n.º 3
0
    def test_unary_array_with_key(self):
        dataset = tabular.from_data(('a', np.arange(10)))

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(dataset.keys, ('a', ))
        self.assertIsNone(dataset.mode)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, [1, 3])
        self.assertIsInstance(output, np.ndarray)
Ejemplo n.º 4
0
    def test_dict_array_callable_unary(self):
        dataset = tabular.from_data({'a': np.arange(10), 'b': lambda i: i * i})

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(set(dataset.keys), {'a', 'b'})
        self.assertEqual(dataset.mode, dict)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, {'a': [1, 3], 'b': [1, 9]})
        self.assertIsInstance(output['a'], np.ndarray)
        self.assertIsInstance(output['b'], list)
Ejemplo n.º 5
0
    def test_unary_callable_tuple(self):
        dataset = tabular.from_data((('a', 'b'), lambda i: (i * i, -i)),
                                    size=10)

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(dataset.keys, ('a', 'b'))
        self.assertEqual(dataset.mode, tuple)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, ([1, 9], [-1, -3]))
        for out in output:
            self.assertIsInstance(out, list)
Ejemplo n.º 6
0
    def test_tuple_array_with_key_callable_unary(self):
        dataset = tabular.from_data(
            (('a', np.arange(10)), ('b', lambda i: i * i)))

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(dataset.keys, ('a', 'b'))
        self.assertEqual(dataset.mode, tuple)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, ([1, 3], [1, 9]))
        self.assertIsInstance(output[0], np.ndarray)
        self.assertIsInstance(output[1], list)
Ejemplo n.º 7
0
    def test_tuple_array_list(self):
        dataset = tabular.from_data(
            (np.arange(10), [2, 7, 1, 8, 4, 5, 9, 0, 3, 6]))

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(len(dataset.keys), 2)
        self.assertEqual(dataset.mode, tuple)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, ([1, 3], [7, 8]))
        self.assertIsInstance(output[0], np.ndarray)
        self.assertIsInstance(output[1], list)
Ejemplo n.º 8
0
    def test_dict(self):
        dataset = tabular.from_data(a=np.arange(10),
                                    b=[2, 7, 1, 8, 4, 5, 9, 0, 3, 6])

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(set(dataset.keys), {'a', 'b'})
        self.assertEqual(dataset.mode, dict)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, {'a': [1, 3], 'b': [7, 8]})
        self.assertIsInstance(output['a'], np.ndarray)
        self.assertIsInstance(output['b'], list)
Ejemplo n.º 9
0
    def test_tuple_array_callable_tuple(self):
        dataset = tabular.from_data((np.arange(10), (('b', 'c'), lambda i:
                                                     (i * i, -i))))

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(len(dataset.keys), 3)
        self.assertEqual(dataset.keys[1:], ('b', 'c'))
        self.assertEqual(dataset.mode, tuple)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, ([1, 3], [1, 9], [-1, -3]))
        self.assertIsInstance(output[0], np.ndarray)
        self.assertIsInstance(output[1], list)
Ejemplo n.º 10
0
    def test_unary_callable_dict(self):
        dataset = tabular.from_data((('a', 'b'), lambda i: {
            'a': i * i,
            'b': -i
        }),
                                    size=10)

        self.assertIsInstance(dataset, chainer.dataset.TabularDataset)
        self.assertEqual(len(dataset), 10)
        self.assertEqual(dataset.keys, ('a', 'b'))
        self.assertEqual(dataset.mode, dict)

        output = dataset.slice[[1, 3]].fetch()
        np.testing.assert_equal(output, {'a': [1, 9], 'b': [-1, -3]})
        for out in output.values():
            self.assertIsInstance(out, list)
Ejemplo n.º 11
0
 def test_unique(self):
     dataset_a = tabular.from_data(np.arange(10))
     dataset_b = tabular.from_data(np.arange(10))
     self.assertNotEqual(dataset_a.keys, dataset_b.keys)
Ejemplo n.º 12
0
 def test_dict_callable_unary_callable_unary_without_size(self):
     with self.assertRaises(ValueError):
         tabular.from_data(({'a': lambda i: i * i, 'b': lambda i: -i}))
Ejemplo n.º 13
0
 def test_tuple_callable_unary_callable_unary_without_size(self):
     with self.assertRaises(ValueError):
         tabular.from_data((('a', lambda i: i * i), ('b', lambda i: -i)))
Ejemplo n.º 14
0
 def test_unary_callable_without_key(self):
     with self.assertRaises(ValueError):
         tabular.from_data(lambda i: i * i, size=10)
Ejemplo n.º 15
0
 def test_tuple_unique(self):
     dataset_a = tabular.from_data(np.arange(10),
                                   [3, 1, 4, 5, 9, 2, 6, 8, 7, 0])
     dataset_b = tabular.from_data([2, 7, 1, 8, 4, 5, 9, 0, 3, 6],
                                   -np.arange(10))
     self.assertFalse(set(dataset_a.keys) & set(dataset_b.keys))