У меня есть структура, которая содержит два поля, одно из которых содержит векторы, например:
myStruct(1).f1 = val1; myStruct(1).f2 = [elt1 elt2 elt3];
Я хочу найти индексы элементов myStruct, где elt1 == valA и elt2 == valB
myStruct
elt1 == valA
elt2 == valB
Один из способов сделать это будет:
% Create a matrix whose rows are the f2 vectors in the struct array A = cell2mat({myStruct.f2}.'); % Find which rows match your conditions Matches = (A(:,1) == valA) & (A(:,2) == valB); % (If required: convert logical vector to indices) Indices = find(Matches);