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

1 次查看(过去 30 天)
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?

回答(2 个)

OCDER
OCDER 2017-9-25
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 2017-9-25

类别

Help CenterFile Exchange 中查找有关 Numeric Types 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by