A(B)=0 What is its meaning?

4 ビュー (過去 30 日間)
zhenyu zeng
zhenyu zeng 2019 年 3 月 6 日
編集済み: Torsten 2019 年 3 月 6 日
A=rand(5)
B=A>0.8
A(B)=0
Can you tell me what is A(B)=0 meaning?

採用された回答

Fangjun Jiang
Fangjun Jiang 2019 年 3 月 6 日
B is a logical index matrix. You can see the value is 1 (true) or 0 (false) wherever the corresponding value in A is greater than 0.8.
A(B)=0 means for all those places where B's value is true, set the corresponding value in A to 0.
Use this example to see it better.
A=magic(5)
B=A>10
A(B)=0
  3 件のコメント
Torsten
Torsten 2019 年 3 月 6 日
編集済み: Torsten 2019 年 3 月 6 日
It's the same as if you ask why MATLAB loops if you write
for i=1:n
...
end
It's just MATLAB syntax.
Look up "Logical indexing":
https://blogs.mathworks.com/loren/2013/02/20/logical-indexing-multiple-conditions/
Fangjun Jiang
Fangjun Jiang 2019 年 3 月 6 日
It is a very efficient way for programming.

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

その他の回答 (1 件)

Torsten
Torsten 2019 年 3 月 6 日
編集済み: Torsten 2019 年 3 月 6 日
All numbers in the matrix A that are bigger than 0.8 are set to 0.

カテゴリ

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

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by