Splitting matrix into row vectors
38 次查看(过去 30 天)
显示 更早的评论
Hi,
I have a matrix (with varying dimensions so those aren't important) and I want to split it into vectors such that the first vector is the first row, the second vector is the second row, etc.
I need to do this since these vectors will be the input to a function that can only take row vectors. What is the best way to split the matrix into row vectors?
Thank you.
回答(1 个)
Stephen23
2017-11-28
编辑:Stephen23
2017-11-28
Simply use indexing:
mat = [...]; % your matrix
for k = 1:size(mat,1)
vec = mat(k,:); % each row of mat
... do whatever with vec
end
C = num2cell(mat,2);
for k = 1:numel(C)
vec = C{k};
... do whatever with vec
end
1 个评论
Lodovico Morando
2020-9-2
Yea but now all the vectors have the same name..is there a way to give each of them a different name according to the number of columns or raws there are?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!