Я ищу быстрый и простой способ доступа к определенным массивам, находящимся внутри массивов ячеек. Например, предположим, что у меня естьПростой способ доступа к массивам в массивах ячеек
A = rand(10,2);
B = rand(15,1);
C = rand(130,1);
D = rand(16,1);
E = rand(1000,25);
my_cell = {A,B,C,D,E};
Скажем, я хочу, 1-й, 2-й и 4-й матрицы только (т.е., A, B и D) внутри нового массива ячеек. Таким образом, новый массив ячеек будет состоять из {A, B, D}. Это, очевидно, легко с использованием цикла for:
idx=[1,2,4];
new_cell=cell(1,length(idx));
for i=1:length(idx)
new_cell{i}=my_cell{idx(i)};
end
Мне было интересно, был ли еще более быстрый/более простой способ. Может быть, есть обманный трюк или функция индексирования, о которых я не знаю? Я был бы признателен за помощь.
примечание. этот подход не будет работать, если вы хотите сохранить структуру. Измените исходную ячейку на 'my_cell = {A; B; C; D; E}', и вы поймете, что я имею в виду. –
Удивительный! Спасибо за советы по поводу структуры. Я понимаю что ты имеешь ввиду. –