Eye

統計関数。指定されたサイズの、主対角が1でそれ以外が0の行列を作成します。対角に1、それ以外に0を含む行列を返します。

static matrix matrix::Eye(
  const ulong  rows,        // 行数
  const ulong  cols,        // 列数
  const int    ndiag=0      // 対角線の指数
  );

パラメータ

rows

[in] 出力の行数

cols

[in] 出力の列数

ndiag=0

[in] 対角線のインデックス。0(デフォルト)は主対角線を表し、正の値は上対角線を表し、負の値は下対角線を表します。

戻り値

値が1に等しいk番目の対角要素を除いて、すべての要素が0に等しい行列

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.]])