Splitting matrix into row vectors

38 vues (au cours des 30 derniers jours)
Pedro Oliveira
Pedro Oliveira le 28 Nov 2017
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.

Réponses (1)

Stephen23
Stephen23 le 28 Nov 2017
Modifié(e) : Stephen23 le 28 Nov 2017
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 commentaire
Lodovico Morando
Lodovico Morando le 2 Sep 2020
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?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by