MATLAB: Как я могу отменить (значение "NaN") элементов матрицы на основе значений "NaN" другой матрицы?

Предположим, у меня есть матрица A=

 1     2     3;
 4     5     6;
 7     8     9

и матрица B=

1      NaN    3; 
NaN    5      6;  
7      NaN    NaN

Я хочу отменить те же элементы, которые отменяются в матрице B. Это будет:

A2 =

 1     NaN     3;
 NaN     5     6;
 7     NaN     NaN

Как я могу это сделать?

1 ответ

Решение

Вы можете создать новую матрицу A2 так, чтобы каждый элемент a2 = b - b + a,

Это зависит от того факта, что NaN распространяется через оценку выражения, и b - b по сути, нет во всех остальных случаях.

Также гарантируется, что ваш тип никогда не будет переполнен.

Другие вопросы по тегам