示例#1
0
    def testMoveaxisExecution(self):
        x = zeros((3, 4, 5), chunk_size=2)

        t = moveaxis(x, 0, -1)

        res = self.executor.execute_tensor(t, concat=True)[0]
        self.assertEqual(res.shape, (4, 5, 3))

        t = moveaxis(x, -1, 0)

        res = self.executor.execute_tensor(t, concat=True)[0]
        self.assertEqual(res.shape, (5, 3, 4))

        t = moveaxis(x, [0, 1], [-1, -2])

        res = self.executor.execute_tensor(t, concat=True)[0]
        self.assertEqual(res.shape, (5, 4, 3))

        t = moveaxis(x, [0, 1, 2], [-1, -2, -3])

        res = self.executor.execute_tensor(t, concat=True)[0]
        self.assertEqual(res.shape, (5, 4, 3))
示例#2
0
    def testCreateView(self):
        arr = ones((10, 20, 30), chunk_size=[4, 3, 5])
        arr2 = transpose(arr)
        self.assertTrue(arr2.op.create_view)

        arr3 = transpose(arr)
        self.assertTrue(arr3.op.create_view)

        arr4 = arr.swapaxes(0, 1)
        self.assertTrue(arr4.op.create_view)

        arr5 = moveaxis(arr, 1, 0)
        self.assertTrue(arr5.op.create_view)

        arr6 = atleast_1d(1)
        self.assertTrue(arr6.op.create_view)

        arr7 = atleast_2d([1, 1])
        self.assertTrue(arr7.op.create_view)

        arr8 = atleast_3d([1, 1])
        self.assertTrue(arr8.op.create_view)

        arr9 = arr[:3, [1, 2, 3]]
        # no view cuz of fancy indexing
        self.assertFalse(arr9.op.create_view)

        arr10 = arr[:3, None, :5]
        self.assertTrue(arr10.op.create_view)

        data = np.array([[[0], [1], [2]]])
        x = tensor(data)

        t = squeeze(x)
        self.assertTrue(t.op.create_view)

        y = x.reshape(3)
        self.assertTrue(y.op.create_view)