Example #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)
Example #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)
Example #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)
Example #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)
Example #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)
Example #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)
Example #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)
Example #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)
Example #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)
Example #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)
Example #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)
Example #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}))
Example #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)))
Example #14
0
 def test_unary_callable_without_key(self):
     with self.assertRaises(ValueError):
         tabular.from_data(lambda i: i * i, size=10)
Example #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))