예제 #1
0
 def test_quantile_include_NaN(self):
     input_data = np.random.randn(2, 3, 4)
     input_data[0, 1, 1] = np.nan
     x = paddle.to_tensor(input_data)
     paddle_res = paddle.quantile(x, q=0.35, axis=0)
     np_res = np.quantile(input_data, q=0.35, axis=0)
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res,
                                 equal_nan=True))
예제 #2
0
 def test_quantile_with_keepdim_and_multiple_axis(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x, q=0.1, axis=[1, 4], keepdim=True)
     np_res = np.quantile(self.input_data,
                          q=0.1,
                          axis=[1, 4],
                          keepdims=True)
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))
예제 #3
0
 def test_quantile_multiple_axis_keepdim(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x,
                                  q=[0.1, 0.2, 0.3],
                                  axis=[1, 2],
                                  keepdim=True)
     np_res = np.quantile(self.input_data,
                          q=[0.1, 0.2, 0.3],
                          axis=[1, 2],
                          keepdims=True)
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))
예제 #4
0
 def test_axis_value_error_3():
     paddle_res = paddle.quantile(self.x, q=0.4, axis=[])
예제 #5
0
 def test_axis_type_error_2():
     paddle_res = paddle.quantile(self.x, q=0.4, axis=[1, 0.4])
예제 #6
0
 def test_x_type_error():
     x = [1, 3, 4]
     paddle_res = paddle.quantile(x, q=0.9)
예제 #7
0
 def test_q_range_error_3():
     paddle_res = paddle.quantile(self.x, q=[])
예제 #8
0
 def test_q_range_error_2():
     paddle_res = paddle.quantile(self.x, q=[0.2, -0.3])
예제 #9
0
 def test_quantile_multiple_axis(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x, q=[0.2, 0.67], axis=[1, -1])
     np_res = np.quantile(self.input_data, q=[0.2, 0.67], axis=[1, -1])
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))
예제 #10
0
 def test_quantile(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x, q=[0.3, 0.44], axis=-2)
     np_res = np.quantile(self.input_data, q=[0.3, 0.44], axis=-2)
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))
예제 #11
0
 def test_quantile_include_NaN(self):
     input_data = np.random.randn(2, 3, 4)
     input_data[0, 1, 1] = np.nan
     x = paddle.to_tensor(input_data)
     paddle_res = paddle.quantile(x, q=0.35, axis=0)
     self.assertTrue(paddle.isnan(paddle_res[1, 1]))
예제 #12
0
 def test_quantile_with_boundary_q(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x, q=0, axis=3)
     np_res = np.quantile(self.input_data, q=0, axis=3)
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))
예제 #13
0
 def test_quantile_with_keepdim(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x, q=0.35, axis=4, keepdim=True)
     np_res = np.quantile(self.input_data, q=0.35, axis=4, keepdims=True)
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))
예제 #14
0
 def test_quantile_with_multi_axis(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x, q=0.75, axis=[0, 2, 3])
     np_res = np.quantile(self.input_data, q=0.75, axis=[0, 2, 3])
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))
예제 #15
0
 def test_quantile_with_no_axis(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x, q=0.35)
     np_res = np.quantile(self.input_data, q=0.35)
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))
예제 #16
0
 def test_quantile_single_q(self):
     x = paddle.to_tensor(self.input_data)
     paddle_res = paddle.quantile(x, q=0.5, axis=2)
     np_res = np.quantile(self.input_data, q=0.5, axis=2)
     self.assertTrue(np.allclose(paddle_res.numpy(), np_res))