У меня есть матрица столбцов и массив ячеек, который имеет два столбца. В первом столбце есть 1x2 удвоения, а во втором столбце - 1x1.Элементы поиска матрицы в другой ячейке в matlab
Например
columnMatrix = [1;5];
cellArray = {[1,8],[10];[8,1],[20];[4,6],[80];[3,5],[40];[14,16],[85];[5,10],[36]};
Я хотел бы искать каждый элемент columnMatrix
в cellArray(:,1)
, а затем вернуть его соответствующее значение в cellArray(:,2)
Например выход должен быть, как это
newCell = {[1],[10,20];[5],[40,36]};
Я попытался использовать функцию ismember
таким образом
[~,idx] = ismember(cell2mat(cellArray(:,1)),columnMatrix (: , 1));
Это возвращает все индексы, у которых есть искомый элемент, но они находятся в двух отдельных столбцах, и я не могу выполнить любую другую логическую операцию, чтобы получить соответствующую вторую запись столбца.
Есть ли способ, которым эта операция может быть достигнута? Может кто-нибудь, пожалуйста, помогите?
Благодаря
Каких показателей он не показывается и как они расположены? – Crowley
'idx = [1,0; 0,1; 0,0; 0,2; 0,0; 2,0];' –