substituting, indexing two matricies

1 view (last 30 days)
Hello, I have a problem that I hope someone may be able to help me with. I will try to explain it best I can. Essentially i want to substitute values from one matrix into another.
I have matrix A and B and wish to create C
A=[ 2 5 7 ; 6 8 1 ; 3 6 4 ]
B=[ 0 2 0; 4 0 0 ; 8 0 0 ]
C=[ 2 2 7 ; 4 8 1 ; 8 6 4 ]
Matrix C is the same as matrix A except every value except the zeros from matrix B has been substitued into A to create C. I hope I have expleained this properly as I am struggling to find a solution.
I have tried a few methods including loops but have not been able to find a solution.
If anyone is able to help i would be very gratefull. Thanks
Regards Dana

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 14 Dec 2011
t = B~=0
C = A
C(t) = B(t)
  1 Comment
Dana
Dana on 15 Dec 2011
Haha. Thanks andrei. That is about a thousand times simpler than what i was trying to do. Briliant. Thanks for your help. You really saved me some time

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!