Matlab: вырезать массив данных в меньшие массивы - PullRequest
2 голосов
/ 16 мая 2011

Это моя матрица.

mat = [1;2;3;4;5;6;7;8;9;10;11;12;13;14]

Теперь я хочу создать четыре новые матрицы.

mat1 = [1;5;9;13]
mat2 = [2;6;10;14]
mat3 = [3;7;11]
mat4 = [4;8;12]

Какую команду я могу использовать?

1 Ответ

5 голосов
/ 16 мая 2011
mat1 = mat(1:4:end);
mat2 = mat(2:4:end);
mat3 = mat(3:4:end);
mat4 = mat(4:4:end);

Редактировать: чтобы обратиться к комментарию, чтобы сделать его немного более общим, я бы использовал массивы ячеек и сделал бы что-то вроде

for i = 1:n,
     submat{i} = mat(i:n:end);
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...