change column in matrix

1 回表示 (過去 30 日間)
Rica
Rica 2012 年 12 月 7 日
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 件のコメント
Muruganandham Subramanian
Muruganandham Subramanian 2012 年 12 月 7 日
編集済み: Muruganandham Subramanian 2012 年 12 月 7 日
if you step size is 74..the matrix will be B=[a1 a75 a149 a223...] like this only.. check is your question is right?

サインインしてコメントする。

回答 (2 件)

Andrei Bobrov
Andrei Bobrov 2012 年 12 月 7 日
編集済み: Andrei Bobrov 2012 年 12 月 7 日
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 2012 年 12 月 7 日
編集済み: Muruganandham Subramanian 2012 年 12 月 7 日
a=1:2250;
d=reshape(a,[75 30]);

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by