Store answers in multiple variables?

Hello,
I have a variable B which outputs about 100 cells. Assuming N = 4, how do I go about obtaining cell2mat(B(N(1)) in a new variable x_1, cell2mat(B(N(2)) in x_2, and so forth? Currently I am using:
for cnt = 1:N
hold on;
x = cell2mat(B(cnt));
end
Thanks in advance!
-- Jake

2 commentaires

Daniel Shub
Daniel Shub le 28 Sep 2011
In general, you probably do not want to be doing this. Why do you want x1, x2, ... It is only going to lead to evil eval statements later.
Jake Bolanski
Jake Bolanski le 1 Oct 2011
On a separate note, is there a function in MatLab that will allow me to detect colors within an image? I have broken down the image into a matrix via the imread() function. How can I go about detecting whether the leaf detected is green or yellow or so on? Thanks in advance.

Connectez-vous pour commenter.

 Réponse acceptée

Fangjun Jiang
Fangjun Jiang le 28 Sep 2011
"hold on" is for graphics. It has nothing to do your operation.
Depending on your cell array B, you may not need cell2mat. See this example:
B={rand(2),magic(2),rand(3),magic(3),rand(4),magic(4)};
[x1,x2,x3,x4]=B{2:5}

4 commentaires

Jake Bolanski
Jake Bolanski le 1 Oct 2011
Thanks for the reply. Hold on is there because there is a plot - i simply excluded the code from the question.
I think I was somewhat unclear in my question. What I want to do is this:
Say I have N = 10 but I do not know that N is 10 as it changes from 1 to whatever.
I want to make a new variable for every value of N automatically. Hence, I want it such that x1 = 1, x2 = 2, x3 = 3, ... xN = N. Since I do not know what N is, I cannot do [x1,x2,x3,...,xN].
How can I go about this? I assume I need a loop but cannot figure out how to set up one.
Thanks in advance.
Fangjun Jiang
Fangjun Jiang le 1 Oct 2011
Don't do that. That is a really bad programming. You'll find that is a trap. See http://www.mathworks.com/matlabcentral/answers/143-how-do-i-make-a-series-of-variables-a1-a2-a3-a10
Fangjun Jiang
Fangjun Jiang le 1 Oct 2011
And this http://matlab.wikia.com/wiki/FAQ#How_can_I_create_variables_A1.2C_A2.2C....2CA10_in_a_loop.3F
Jake Bolanski
Jake Bolanski le 1 Oct 2011
Wow, very very very helpful! Thanks a bunch! :D

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Entering Commands dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by