Пример #1
0
    def test2(self):
        R = {
            'A': [
                -8.0, -7.0, -3.0, -2.0, -1.0, 1.0, 2.0, 3.0, 4.0, 9.0, -10.0,
                -9.0, -6.0, -5.0, -4.0, 0.0, 5.0, 6.0, 7.0, 8.0
            ],
            'B': [
                1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 2.0, 2.0,
                2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0
            ]
        }

        a = [
            4, 8, 1, 5, -7, -5, 9, 7, -8, -10, -1, -4, 3, 0., -2, 6, 2, -9, -3,
            -6
        ]
        b = [1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2]

        df = DataFrame()
        for A, B in zip(a, b):
            df.insert({'A': A, 'B': B})

        df.sort(['B', 'A'])

        for d, r in zip(df['A'], R['A']):
            self.assertAlmostEqual(d, r)

        for d, r in zip(df['B'], R['B']):
            self.assertAlmostEqual(d, r)
Пример #2
0
    def test3(self):
        df = DataFrame()

        with self.assertRaises(Exception) as cm:
            df.sort()

        self.assertEqual(str(cm.exception),
                         'Table must have data to sort data')
Пример #3
0
    def test5(self):
        df = DataFrame()
        df['a'] = [2, 5]
        df['b'] = [2, 3]

        with self.assertRaises(Exception) as cm:
            df.sort(42)

        self.assertEqual(str(cm.exception), "'int' object is not iterable")
Пример #4
0
    def test4(self):
        df = DataFrame()
        df['a'] = [2]
        df['b'] = [2, 3]

        with self.assertRaises(Exception) as cm:
            df.sort()

        self.assertEqual(str(cm.exception), 'columns have unequal lengths')