combining 3 different arrays of single column numbers into one array

2 views (last 30 days)
basically i have 3 different columns: a, b, and c, which are all doubles
a = [1;2;3]; b = [2;0;1]; c = [1;0;1];
and i want to combine them into one, say d..
d = [121; 200; 311];
so d is a 3x1 vector od doubles

Accepted Answer

Sean de Wolski
Sean de Wolski on 10 Jun 2011
I'm pretty sure there's a better way but this will work:
cellfun(@(x)str2double(x(~isspace(x))),cellfun(@(x)num2str(x),mat2cell([a b c],ones(size(a,1),1),3),'uni',false))
%Needs more work to accept decimals.
  3 Comments
Michael
Michael on 10 Jun 2011
no decimals needed in my case, only ever going to be integers
Matt Fig
Matt Fig on 10 Jun 2011
An alternative:
str2num(sprintf('%i%i%i %i%i%i %i%i%i',a,b,c))

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!