Simple Question (I think) about finding zeros(and other number) in an array

1 view (last 30 days)
I have the following array.
R = [ 1 2 0 1 0 2]
if values in R = 0 I want to replace it with 3, so I did
If R == 0
R = 3
end
So it should end up
R = [ 1 2 3 1 3 2]
However as you probably know, this does not work. How do I make this work? Thanks! Same problem with the following:
P = [ 1 2 3 4 5]
Q = [ 5 4 3 2 5]
I want to find positions where P == Q so I tried
if P == Q
Q = 6
end
ie all positions where P = Q change to 6 so it should end up with
Q = [ 5 4 6 2 6]

Accepted Answer

madhan ravi
madhan ravi on 7 Sep 2018
Edited: madhan ravi on 7 Sep 2018
TRY THIS:
R = [ 1 2 0 1 0 2]
R(R==0)=3
P = [ 1 2 3 4 5]
Q = [ 5 4 3 2 5]
Q(Q==P)=6
  11 Comments
madhan ravi
madhan ravi on 7 Sep 2018
Edited: madhan ravi on 7 Sep 2018
C = [ 3 4 5 6 7 8]
R = [ 1 2 0 1 0 2]
D = [ 8 7 6 5 4 3]
D(R==0)=1
C(R==0)=C(R==0)-1
R(R==0)=3
Without loop

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!