mindspore.Tensor.fill_diagonal
- Tensor.fill_diagonal(fill_value, wrap=False)[source]
Fills the main diagonal of a Tensor with a specified value and returns the result. The input has at least 2 dimensions, and all dimensions of input must be equal in length when the dimension of input is greater than 2.
Warning
This is an experimental API that is subject to change or deletion.
- Parameters
- Returns
y (Tensor) - Tensor, has the same shape and data type as self.
- Raises
TypeError – If data type of self is not one of the following: float32, int32, int64.
ValueError – If the dimension of self is not greater than 1.
ValueError – If the size of each dimension is not equal, when the dimension is greater than 2.
- Supported Platforms:
Ascend
GPU
CPU
Examples
>>> import numpy as np >>> import mindspore >>> from mindspore import Tensor >>> x = Tensor(np.ones((6, 3)), mindspore.float32) >>> output = x.fill_diagonal(5.0, wrap=True) >>> print(output) [[5. 1. 1.] [1. 5. 1.] [1. 1. 5.] [1. 1. 1.] [5. 1. 1.] [1. 5. 1.]]