Найдите индексы и значения ненулевых элементов
k = find(X)k = find(X,n)k = find(X,n,direction)[row,col]
= find(___)[row,col,v]
= find(___) возвращает вектор, содержащий линейные индексы каждого ненулевого элемента в массиве k = find(X)X.
Если X является вектором, то find возвращает вектор с той же ориентацией как X.
Если X является многомерным массивом, то find возвращает вектор-столбец линейных индексов результата.
Если X не содержит ненулевых элементов или пуст, то find возвращает пустой массив.
Чтобы найти элементы массива, которые удовлетворяют условию, используйте find в сочетании с выражением отношения. Например, find(X<5) возвращает линейные индексы в элементы в X, которые являются меньше, чем 5.
Чтобы непосредственно найти элементы в X, которые удовлетворяют условие X<5, используйте X(X<5). Избегайте вызовов функции как X(find(X<5)), которые излишне используют find на логической матрице.
Когда вы выполняете find с реляционной операцией как X>1, важно помнить, что результатом реляционной операции является логическая матрица единиц и нулей. Например, команда [row,col,v] = find(X>1) возвращает вектор-столбец логического 1 (true) значения для v.
Индексы строки и столбца, row и col, связаны с линейными индексами в k k = sub2ind(size(X),row,col).