How to arrange alternate cells of a column into two columns?

5 views (last 30 days)
Let's say the column matrix is:
A =
2
6
7
3
8
3
2
9
7
5
4
1
And I need to obtain final result as
A =
2 6
7 3
8 3
2 9
7 5
4 1
Can I know the way to split in this way?

Accepted Answer

Florian Bidaud
Florian Bidaud on 16 Aug 2023
Edited: Florian Bidaud on 16 Aug 2023
A = [2 6 7 3 8 3 2 9 7 5 4 1]'
A = 12×1
2 6 7 3 8 3 2 9 7 5
B = [A(1:2:end) A(2:2:end)]
B = 6×2
2 6 7 3 8 3 2 9 7 5 4 1
  3 Comments
Manoj Kumar V
Manoj Kumar V on 16 Aug 2023
How shall the matrix be formed when there are odd number of elements? Is there a way to make it even by putting zero for the last element? Lets say: A = [2 6 7 3 8 3 2 9 7 5 4]. How can I obtain
B = 6×2
2 6
7 3
8 3
2 9
7 5
4 0
Dyuman Joshi
Dyuman Joshi on 16 Aug 2023
That depends on the size you want to arrange -
%For a 2D array, define atleast one dimension
ncol = 2;
A = [2 6 7 3 8 3 2 9 7 5 4];
%Convert to column vector
A = A(:);
%Add required zeros
A = [A;zeros(1,rem(numel(A),ncol))];
B = reshape(A,ncol,[])'
B = 6×2
2 6 7 3 8 3 2 9 7 5 4 0

Sign in to comment.

More Answers (0)

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!