Пример #1
0
    def test_multiple(self):
        multi_f = MultipleFeaturizer([self.single, self.multi])
        data = self.make_test_data()

        self.assertArrayAlmostEqual([2, 0, 3], multi_f.featurize(1))

        self.assertArrayEqual(['A'], multi_f.citations())

        implementors = multi_f.implementors()
        self.assertIn('Us', implementors)
        self.assertIn('Them', implementors)
        self.assertEquals(2, len(implementors))

        # Ensure BaseFeaturizer operation without overriden featurize_dataframe
        with warnings.catch_warnings(record=True) as w:
            multi_f.featurize_dataframe(data, 'x')
            self.assertEqual(len(w), 0)
        self.assertArrayAlmostEqual(data['y'], [2, 3, 4])
        self.assertArrayAlmostEqual(data['w'], [0, 1, 2])
        self.assertArrayAlmostEqual(data['z'], [3, 4, 5])

        # Test handling of Featurizers with overloaded featurize_dataframe
        f = FunctionFeaturizer()
        multi_f = MultipleFeaturizer([self.single, self.multi, f])
        data = self.make_test_data()
        with warnings.catch_warnings(record=True) as w:
            multi_f.featurize_dataframe(data, 'x')
            self.assertEqual(len(w), 1)
Пример #2
0
    def test_multiple(self):
        # test iterating over both entries and featurizers
        for iter_entries in [True, False]:
            multi_f = MultipleFeaturizer([self.single, self.multi],
                                         iterate_over_entries=iter_entries)
            data = self.make_test_data()

            self.assertArrayAlmostEqual([2, 0, 3], multi_f.featurize(1))

            self.assertArrayEqual(['A'], multi_f.citations())

            implementors = multi_f.implementors()
            self.assertIn('Us', implementors)
            self.assertIn('Them', implementors)
            self.assertEqual(2, len(implementors))

            # Ensure BaseFeaturizer operation without overriden featurize_dataframe
            with warnings.catch_warnings(record=True) as w:
                data = multi_f.featurize_dataframe(data, 'x')
                self.assertEqual(len(w), 0)
            self.assertArrayAlmostEqual(data['y'], [2, 3, 4])
            self.assertArrayAlmostEqual(data['w'], [0, 1, 2])
            self.assertArrayAlmostEqual(data['z'], [3, 4, 5])

            f = MatrixFeaturizer()
            multi_f = MultipleFeaturizer([self.single, self.multi, f])
            data = self.make_test_data()
            with warnings.catch_warnings(record=True) as w:
                data = multi_f.featurize_dataframe(data, 'x')
                self.assertEqual(len(w), 0)

            self.assertArrayAlmostEqual(data['representation'][0],
                                        [[1.0, 0.0], [0.0, 1.0]])
Пример #3
0
    def test_multiple(self):
        multi_f = MultipleFeaturizer([self.single, self.multi])
        data = self.make_test_data()

        self.assertArrayAlmostEqual([2, 0, 3], multi_f.featurize(1))

        self.assertArrayEqual(['A'], multi_f.citations())

        implementors = multi_f.implementors()
        self.assertIn('Us', implementors)
        self.assertIn('Them', implementors)
        self.assertEquals(2, len(implementors))

        multi_f.featurize_dataframe(data, 'x')
        self.assertArrayAlmostEqual(data['y'], [2, 3, 4])
        self.assertArrayAlmostEqual(data['w'], [0, 1, 2])
        self.assertArrayAlmostEqual(data['z'], [3, 4, 5])
Пример #4
-1
    def test_multiple(self):
        # test iterating over both entries and featurizers
        for iter_entries in [True, False]:
            multi_f = MultipleFeaturizer([self.single, self.multi],
                                         iterate_over_entries=iter_entries)
            data = self.make_test_data()

            self.assertArrayAlmostEqual([2, 0, 3], multi_f.featurize(1))

            self.assertArrayEqual(['A'], multi_f.citations())

            implementors = multi_f.implementors()
            self.assertIn('Us', implementors)
            self.assertIn('Them', implementors)
            self.assertEqual(2, len(implementors))

            # Ensure BaseFeaturizer operation without overriden featurize_dataframe
            with warnings.catch_warnings(record=True) as w:
                multi_f.featurize_dataframe(data, 'x')
                self.assertEqual(len(w), 0)
            self.assertArrayAlmostEqual(data['y'], [2, 3, 4])
            self.assertArrayAlmostEqual(data['w'], [0, 1, 2])
            self.assertArrayAlmostEqual(data['z'], [3, 4, 5])

            f = MatrixFeaturizer()
            multi_f = MultipleFeaturizer([self.single, self.multi, f])
            data = self.make_test_data()
            with warnings.catch_warnings(record=True) as w:
                multi_f.featurize_dataframe(data, 'x')
                self.assertEqual(len(w), 0)

            self.assertArrayAlmostEqual(data['representation'][0],
                                        [[1.0, 0.0], [0.0, 1.0]])