How can I cancel ("NaN" value) elements of a matrix based on another matrix's "NaN" values?

1 visualización (últimos 30 días)
Hi everyone,
Let's suppose I have a matrix A: A = 1 2 3; 4 5 6; 7 8 9
and a matrix B: B= 1 NaN 3; NaN 5 6; 7 NaN NaN
I want to cancel the same elements that are canceled in matrix B. It would be:
A2= 1 NaN 3; NaN 5 6; 7 NaN NaN
How can I do that?

Respuestas (2)

OCDER
OCDER el 25 de Sept. de 2017
Use isnan to find where NaN values are. Then replace elements in A with NaN to get A2.
A2 = A;
A2(isnan(B)) = NaN;
A2 =
1 NaN 3
NaN 5 6
7 NaN NaN

Andrei Bobrov
Andrei Bobrov el 25 de Sept. de 2017
A2 = B./B.*A

Categorías

Más información sobre Numeric Types en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by