change column in matrix

3 vues (au cours des 30 derniers jours)
Rica
Rica le 7 Déc 2012
Hi!
is it possible in matlab to change coluns:
A=[a1 a2 a3 a4.......a2250],a1...a2250 are arrays oth size(30*1).
i want to get this matrix B=[a1 a75 a150.... a2 a76....a3 a77..... ].
that means i have a step of 74
i wish you could help thank you
  1 commentaire
Muruganandham Subramanian
Muruganandham Subramanian le 7 Déc 2012
Modifié(e) : Muruganandham Subramanian le 7 Déc 2012
if you step size is 74..the matrix will be B=[a1 a75 a149 a223...] like this only.. check is your question is right?

Connectez-vous pour commenter.

Réponses (2)

Andrei Bobrov
Andrei Bobrov le 7 Déc 2012
Modifié(e) : Andrei Bobrov le 7 Déc 2012
B = reshape(permute(reshape(A,size(A,1),75,[]),[1 3 2]),size(A,1),[]);
or
s = size(A,2);
B = A(:,bsxfun(@plus,1:75:s,(0:(s/75-1))')');
or
B = A(:,reshepe(1:size(A,2),75,[])');

Muruganandham Subramanian
Muruganandham Subramanian le 7 Déc 2012
Modifié(e) : Muruganandham Subramanian le 7 Déc 2012
a=1:2250;
d=reshape(a,[75 30]);

Catégories

En savoir plus sur Creating and Concatenating Matrices 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