Find all values within a given tolerance of 0
23 ビュー (過去 30 日間)
古いコメントを表示
I have a matrix, called "difference". "difference" is 139x101. I would like to output the column numbers (i.e. somewhere between column 1 and column 101), where a value exists (out of the 139) that is within say 0.01% of 0. Is there a way to do this? It would be great if it could output the actual value, and column index. Note that if more than 1 column meets criterion, I want to output both.
3 件のコメント
採用された回答
Guillaume
2018 年 11 月 6 日
編集済み: Guillaume
2018 年 11 月 6 日
Ignoring the 0.01% of 0 and assuming you want the location of elements whose absolute value is less than 0.01, simply:
[row, column] = find(abs(difference) < 0.01)
To get the corresponding values:
values = difference(sub2ind(size(difference), row, column));
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!