What does a(a<0) = 0 mean in matlab?

조회 수: 14(최근 30일)
Abhinav Agrawal
Abhinav Agrawal 2022년 6월 23일
답변: Cris LaPierre 2022년 6월 23일
I am new to matlab.
What does a(a<0) = 0 mean?
is it valid if a is an array as well?

채택된 답변

Cris LaPierre
Cris LaPierre 2022년 6월 23일
Yes, it works on arrays. It is using logical indexing to assign values to a. You can learn more about logical indexing in Ch 11 of MATLAB Onramp.
Basically, set any value in a that is less than zero to zero. Here's a simple example.
a = rand(3)
a = 3×3
0.0787 0.4977 0.0631 0.2203 0.4529 0.4654 0.9312 0.7561 0.7632
a<0.5
ans = 3×3 logical array
1 1 1 1 1 1 0 0 0
a(a<0.5)=0
a = 3×3
0 0 0 0 0 0 0.9312 0.7561 0.7632

추가 답변(1개)

Adam Danz
Adam Danz 2022년 6월 23일
> What does a(a<0) = 0 mean?
a can be a scalar or an array.
This replaces all values in a that are less than 0 with 0.
Example
a = [-6: 2 : 6]
a = 1×7
-6 -4 -2 0 2 4 6
a(a<0) = 0
a = 1×7
0 0 0 0 2 4 6

Community Treasure Hunt

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

Start Hunting!

Translated by