Я пытаюсь сравнить 2 массива разных размеров и получить столбец совпадающих пар.
Если я сделаю:
ismembernan = @(a,b) ismember(a,b) | (isnan(a) & any(isnan(b)));
a = [NaN 11 12 13 14 15; NaN 0 1 2 3 4; NaN 5 6 7 8 9];
b = [NaN 0 1 2 3 4; NaN 5 6 7 8 9]];
k = ismembernan(a,b);
col = all(k,2);
column = find(col)
В MATLAB 2016b я получу ожидаемый ответ
column = 2 3
, но в MATLAB 2014a (я должен работать с этой версией) я получаю следующую ошибку:
Ошибкаиспользуя &
Входы должны иметь одинаковый размер.
Ошибка в @ (a, b) ismember (a, b) | (isnan (a) & any (isnan (b)))
возможно, решение - это вложенный цикл for с оператором if
, но я ищу лучшее решение.
Как мне заставить ismember
работать с nan
значения в R2014a?