How to change the value of the certain elements in a matrix
21 ビュー (過去 30 日間)
古いコメントを表示
Hi all, I want to change elements in an array inside of a matrix. I want all the elements that are less than 5 to be 0. For example
example = 4 8
7 2
2 9
5 3
I want this matrix to be:
0 8
7 2
0 9
5 3
0 件のコメント
採用された回答
Hernia Baby
2022 年 6 月 20 日
編集済み: Hernia Baby
2022 年 6 月 20 日
example = [4 8;7 2;2 9;5 3]
idx = example(:,1) < 5
example(idx) = 0
If you want to change all elements which is less than 5 to 0,
example = [4 8;7 2;2 9;5 3];
idx = example < 5
example(idx) = 0
その他の回答 (1 件)
Image Analyst
2022 年 6 月 20 日
example = [4 8
7 2
2 9
5 3];
mask = example < 5;
example(mask) = 0
I'm not sure why one of the 2's stayed in your example (since it's less than 5) but to keep all the 2's, you'd do
example = [4 8
7 2
2 9
5 3];
mask = example < 5 & example > 2;
example(mask) = 0
Of course you could do it all in one line of code if you combine things:
example(example < 5 & example > 2) = 0;
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Multidimensional Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!