C’s メモ

勉強のメモ。

OctaveのFind関数

OctaveのFind関数の使い方をメモ。


[行,列] = find(条件) の形で使うと、条件に合う要素の行番号と列番号をそれぞれ返してくれます。


下の行列Aを例にすると、

A = [2 3; 4 5; 6 7]

(ちなみにAはこんな見た目です。)

A =

   2   3
   4   5
   6   7


条件が「3以上」の要素の行をrow, 列をcolumnとして、

[row,column] = find(A >= 3)

実行すると以下が返ってきます。(%以降は私が後から勝手につけたコメント)

row =

   2   %A>=3を満たす1つ目の要素の行
   3   %A>=3を満たす2つ目の要素の行
   1   %A>=3を満たす3つ目の要素の行
   2   %A>=3を満たす4つ目の要素の行
   3   %A>=3を満たす5つ目の要素の行

column =

   1  %A>=3を満たす1つ目の要素の列
   1   %A>=3を満たす2つ目の要素の列
   2   %A>=3を満たす3つ目の要素の列
   2   %A>=3を満たす4つ目の要素の列
   2   %A>=3を満たす5つ目の要素の列

つまり、2行1列、3行1列、1行2列、2行2列、3行2列の5つの要素が3以上であるということが分かります。



最後に、

help find

を実行すると、findの使い方をより詳しく教えてもらえます。