# combining variables into one variable

28 views (last 30 days)
Janis on 21 Aug 2014
How to combine several variables into one variable? I have 28 variables with the same amount of data (tables 125x121) and I want to transform that into a one variable. Each variable is 125x121 double. I want to combine them all and get 28x125x121 double. How can I do that?

Michael Haderlein on 21 Aug 2014
I'd like to throw the cat function into the discussion:
X=cat(3,S000_010,S010_S020,...);
To your question in the comment on David Sanchez answer: You have a comma too much in your parenthesis and the first = doesn't make sense. It should be X(1,:,:)=S000...
Best regards, Michael

David Sanchez on 21 Aug 2014
Edited: David Sanchez on 21 Aug 2014
your_Combination = zeros(28,125,121); % initialize the final variable
Now you have several options depending on your data:
your_Combination = (1,:,:,) = table_1;
your_Combination = (2,:,:,) = table_2;
...
and so on
You could do it in a for-loop in case your tables allow it:
for k = 1:28
your_Combination = (k,:,:,) = table(k);
end
It all depends on the format of your tables.
Janis on 21 Aug 2014
Thank you for the answer Each variable is in form of matrix. I'm new to the matlab. is table_1, table_2 etc the name of variable I need to write in the code?
I called the final variable X. Variables I want to add to it are called S000_010; S010_020;.......S270_280.
I made the following code: X = (1,:,:,) = S000_010;X = (2,:,:,) = S010_S020;........... and got an error: Error: Expression or statement is incorrect--possibly unbalanced (, {, or [. What's wrong there