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

21 Ansichten (letzte 30 Tage)
Abhinav Agrawal
Abhinav Agrawal am 23 Jun. 2022
Beantwortet: Cris LaPierre am 23 Jun. 2022
I am new to matlab.
What does a(a<0) = 0 mean?
is it valid if a is an array as well?

Akzeptierte Antwort

Cris LaPierre
Cris LaPierre am 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

Weitere Antworten (1)

Adam Danz
Adam Danz am 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

Kategorien

Mehr zu Operating on Diagonal Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by