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

14 views (last 30 days)
I am new to matlab.
What does a(a<0) = 0 mean?
is it valid if a is an array as well?

Accepted Answer

Cris LaPierre
Cris LaPierre on 23 Jun 2022
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

More Answers (1)

Adam Danz
Adam Danz on 23 Jun 2022
> 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