フィルターのクリア

How do i get element array from find function?

1 回表示 (過去 30 日間)
Anonymous Matrix
Anonymous Matrix 2017 年 2 月 18 日
コメント済み: Star Strider 2017 年 2 月 18 日
I know that the find function gives me an array with the location of elements. How do I convert those location indices into an array that displays the element instead?

回答 (1 件)

Image Analyst
Image Analyst 2017 年 2 月 18 日
If you have a 1-D vector, it gives the indexes directly. If you have a 2-D matrix, it gives rows and columns,
[rows, columns] = find(yourArray = someValue);
I don't know what you mean by the element - is it the linear index, the row(s) and column(s), or the array element itself? If you're testing a range instead of equality, you can use the linear index instead of the rows and columns to get the values:
m = magic(5);
linearIndexes = find(m>=18)
result = m(linearIndexes)
  5 件のコメント
Stephen23
Stephen23 2017 年 2 月 18 日
編集済み: Stephen23 2017 年 2 月 18 日
@Anonymous Matrix: I (and other volunteers here) try to show beginners that they can also search for information in the documentation: the documentation has information on how MATLAB works, and you want information on how to use MATLAB... it is a match made in heaven! The more you practice searching for information in the documentation the more you will learn, and the better you will be at using MATLAB.
I don't expect beginners to know how to use MATLAB. I do encourage beginners to read the documentation: MATLAB has very readable documentation. Use it.
Star Strider
Star Strider 2017 年 2 月 18 日
A general discussion on this is in the documentation on Matrix Indexing (link).

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by