problem using the find function
1 回表示 (過去 30 日間)
古いコメントを表示
hi, i'm trying to use the find function to locate specific values form matrix array and to remove them (as you can see in the attached m-file) https://www.dropbox.com/s/bcynkiblh7n8tr5/check_values_s_ds_script.m
i use the function like this:
[row,col] = find(resault>0.899 & resault < 1);
but still i find values that are greater then 1 (some are even 50) what am i doing wrong?
4 件のコメント
Azzi Abdelmalek
2014 年 2 月 3 日
I don't know how you got those figures, but I can assure you that
row,col] = find(resault>0.899 & resault < 1)
will find only location of numbers that are between 0.899 and 1
採用された回答
その他の回答 (2 件)
Amit
2014 年 2 月 3 日
row and col are the indices in the matrix which have the value you need. Find function just finds the indices which satisfy the condition, however find function does not replaces those values.
0 件のコメント
Azzi Abdelmalek
2014 年 2 月 3 日
編集済み: Azzi Abdelmalek
2014 年 2 月 3 日
What you want is
resault(resault>0.899 & resault < 1)
Maybe what you mean by remove them
resault(resault>0.899 & resault < 1)=0
Removing an element doesn't mean set it to zero. Also you can't remove a element from a nxm matrix, you can remove an entire column or row.
1 件のコメント
参考
カテゴリ
Help Center および File Exchange で Creating and Concatenating Matrices についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!