# How can i combine two column of a matrix into one column?

3 views (last 30 days)
Md. Touhidul on 29 Jun 2012
I have a matrix of order m by 3. All three (3) columns contain numeric values; I want to do a sequence of operation as follows:
1. Convert the last two column into text while the first one remain numeric;
2. Combine the last two columns that have now text values into a one column hence the matrix order will be reduce to m by 2;
Please guide me how can i do that. I am a new user of matlab. I would be very thankful for urgent reply.
T. Islam
Jan on 29 Jun 2012
Edited: Jan on 29 Jun 2012
Please post a minimal example. What is the expected result for: [1,2,3; 4,5,6]? Consider, that you cannot mix numerical and string data in one matrix, but this is possible in a cell.
The term "urgent" is counter-productive in this forum, which is supported by volunteers in their spare-time. I'd suggest to delete it.

Adam Filion on 29 Jun 2012
Edited: Adam Filion on 29 Jun 2012
You cannot mix data types inside of a matrix, but you could do this instead inside of a cell. For example
A = magic(3);
B = cell(size(A,1),size(A,2)-1);
for i=1:3
B{i,1} = A(i,1);
B{i,2} = [num2str(A(i,2)) ' ' num2str(A(i,3))];
end
[EDIT] changed code to better match problem description
##### 2 CommentsShow 1 older commentHide 1 older comment
Adam Filion on 29 Jun 2012
Forgot about removing the last column with [], good way to go about it to avoid creating a new variable.

### Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by