creating a new column with three columns

3 views (last 30 days)
hello everyone,
i have three columns with 25 rows each. Now I want to merge all the three columns to one in a way that the first three rows will be the 1st values of all the three columns.
for ex: col_1, col_2 col_3 I need New merge col
25 22 23 25
26 25 20 22
24 28 30 23
26 and so on
so at last i will get one column with total of 75 rows
thanks in advance.

Accepted Answer

Himanshu Rai
Himanshu Rai on 25 Jun 2019
Use this
X = reshape(X', [75, 1])
  11 Comments
Himanshu Rai
Himanshu Rai on 25 Jun 2019
Use this (here X is the new modified matrix after the above operations)
X = reshape(X, [3, 25]);
X = X';
a = X(:, 1);
b = X(:, 2);
c = X(:, 3);

Sign in to comment.

More Answers (2)

Stephan
Stephan on 25 Jun 2019
Edited: Stephan on 25 Jun 2019
Works also if the number of lines or columns is different to 25x3:
a = [col1 col2 col3]
b = reshape(a',[],1)
  3 Comments
Prakhar Modi
Prakhar Modi on 25 Jun 2019
Edited: Prakhar Modi on 25 Jun 2019
its just giving me the same order i want to arrange it so that the new column 1st three values should be the 1st value of old three matrix

Sign in to comment.


Pullak Barik
Pullak Barik on 25 Jun 2019
Edited: Pullak Barik on 25 Jun 2019
I will proceed in the following way-
1) Merge col_1, col_2, col_3 into a single matrix.
2) Reshape the transpose of the array.
The following code does the same-
res = reshape([col_1 col_2 col_3].', [], 1)
  2 Comments
Prakhar Modi
Prakhar Modi on 25 Jun 2019
its just giving me the same order i want to arrange it so that the new column 1st three values should be the 1st values of old three matrix
Pullak Barik
Pullak Barik on 25 Jun 2019
Are your col_1, col_2 and col_3 variables stored as column vectors or row vectors?

Sign in to comment.

Categories

Find more on Resizing and Reshaping 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!