Hello,
I am fairly new to MATLAB and I have a question. How do you replace a value in a matrix? So if I have a matrix A, where A=3,2,5,-6. How can I find, and replace all of the negative numbers with 0? So I want to end up with a matrix of 3,2,5,0.
Thank you!
Molly

 Akzeptierte Antwort

Star Strider
Star Strider am 21 Sep. 2015

2 Stimmen

One way is to use ‘logical indexing’:
A = [3,2,5,-6];
A(A<0) = 0
A =
3 2 5 0

Weitere Antworten (1)

Molly Baltins
Molly Baltins am 21 Sep. 2015

0 Stimmen

Thank you! This has helped a lot!

5 Kommentare

Star Strider
Star Strider am 21 Sep. 2015
My pleasure!
Molly Baltins
Molly Baltins am 22 Sep. 2015
I have another question that hopefully you will be able to help with. I have a string and I want to give each letter a character, but I want it to start off with one. So example I have 'Molly' then it will be [1 2 3 4 5]. Thank you!
My pleasure!
I’m not quite certain what you’re asking, so I’ll take a guess at an answer:
str = 'Molly';
result1 = str(1:5)
result2 = str([3 1 5 2 4])
result1 =
Molly
result2 =
lMyol
I used the colon (:) operator to create the subscript vector in ‘result1’. It is the same as typing [1 2 3 4 5].
Molly Baltins
Molly Baltins am 22 Sep. 2015
Perfect! That is exactly what u wanted! Thank you!
Star Strider
Star Strider am 22 Sep. 2015
Again, my pleasure!

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by