matlab find函数用法

find函数:用于查询非零元素的行和列标志

语法:

  1. ind = find(X, k)
  2. [row,col,v] = find(X, ...)
复制代码ind = find(X) 查询非零元素的位置,如果X是一个行向量,则返回一个行向量,否则,返回一个列向量。如果X全是零元素或者是空数组,则返回一个空数组。

[row,col V] = find(X, ...) 查询满足一定条件的元素的行和列

X一般为逻辑表达式,如X>5等。

其中 row 返回满足条件的元素行的位置

col 返回满足条件的元素的列的位置

V 如果X是一个逻辑表达式,则返回一个逻辑数组,一般如果存在满足要求的元素,则返回一个单位列向量。如果不存在满足要求的元素,则返回一个空向量。

例题:

  1. 5 11 10 8
  2. 4 14 15 1
复制代码
  1. 4
  2. 1
  3. 2
  4. 4
  5. 1
  6. 1
复制代码例题:
  1. 0 0 7
  2. 2
  3. c =
  4. 1
  5. 3
  6. 7
  7. >> x = [3 2 0; -5 0 7; 0 0 1];
  8. 1
  9. 1
  10. -5
  11. 7
  12. ind = find(X, k, \'last\')

    返回K个满足条件X的元素的行和列的位置,其中\'first\'表示从第一个开始算起,\'last\'表示从最后一个元素开始算起。

    例题

    1. >> find(a,3,\'first\')
    2. ans =
    3. 1 3 4
    4. >> find(a,3,\'last\')
    5. ans =
    6. 4 6 7

      复制代码

    复制代码

    复制代码