Eye

统计函数。 构造具有指定大小的矩阵,主对角线上为 1,其它之处则为 0。 返回一个矩阵,对角线上为 1,其它之处为零。

static matrix matrix::Eye(

  const ulong  rows,        // 行数

  const ulong  cols,        // 列数

  const int    ndiag=0      // 对角线索引

   );

参数

rows

[输入]  输出中的行数。

cols

[输入]  输出中的列数。

ndiag=0

[输入]  对角线索引:0(默认值)表示主对角线,正值表示上对角线,负值表示下对角线。

返回值

所有元素都等于零的矩阵,但第 k 对角线除外,其值等于 1。

MQL5 示例:

  matrix eye=matrix::Eye(3, 3);

  Print("eye = \n", eye);



  eye=matrix::Eye(4, 4,1);

  Print("eye = \n", eye);

  /*

   eye =

   [[1,0,0]

    [0,1,0]

    [0,0,1]]

   eye =

   [[0,1,0,0]

    [0,0,1,0]

    [0,0,0,1]

    [0,0,0,0]]

  */

Python 示例:

np.eye(3, dtype=int)

array([[1, 0, 0],

       [0, 1, 0],

       [0, 0, 1]])



np.eye(4, k=1)

array([[0., 1., 0., 0.],

       [0., 0., 1., 0.],

       [0., 0., 0., 1.],

       [0., 0., 0., 0.]])