标签: matlab vector
我有(Idx = 3, 8, and 10)矩阵mx3的两行索引A,其相关元素如下A所示:
(Idx = 3, 8, and 10)
mx3
A
A = [7 4 5 8 4 5 NaN NaN NaN 1 4 5 1 5 5 7 4 5 2 4 5 4 5 7 2 4 6 NaN NaN NaN];
我想要提取具有最后all NaNs的行;这可能发生在矩阵A的任何一行中。
all NaNs
答案 0 :(得分:2)
使用isnan查找NaN s的位置,并使用all查找所有元素均为NaN的行。找到所述条件为真的idx元素,最后得到满足这些条件的idx的最后一个元素。
isnan
NaN
all
idx
idx=idx(all(isnan(A(idx,:)),2)); %elements of idx for which A has all NaNs idx=idx(end); %last element of idx for which A has all NaNs
或者如果您想要单行,则使用find,方向为'last':
find
'last'
idx=idx(find(all(isnan(A(idx,:)),2),1,'last'));