how to change this matrix in this manner?

3 次查看(过去 30 天)
how to manipulate this matrix without for loop:
A=[a1,b1,c1,d1.......;a2,b2,c2,d2..........;a3,b3,c3,d3.......;a4,b4,c4,d4....;..]
how to get this:
H=[a1,b1,a2,b2,a3,b3,......;c1,d1,c2,d2,c3,d3,........]
thank you

采纳的回答

Iain
Iain 2013-5-22
H = [reshape(reshape(A(:,1:2),[],2)',[],1);reshape(reshape(A(:,3:4),[],2)',[],1)];

更多回答(1 个)

David Sanchez
David Sanchez 2013-5-22
If you prefer an extended version:
A = rand(6); % example matrix
H = zeros(size(A,1)/2,size(A,1)*2); % initialize matrix
[n_rows n_cols] = size(A);
col = 1;
row = 1;
while col <= n_cols/2
while row <= n_rows
H(col,(2*row-1)) = A(row,(2*col-1));
H(col,(2*row)) = A(row,col*2);
row = row + 1;
end
col = col + 1;
row = 1;
end

类别

Help CenterFile Exchange 中查找有关 Genetic Algorithm 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by