simple syntax problem need help "curly braces"
Show older comments
Im completely confused what matlab is doing here
Can someone tell me
I tried using help file but don't get what its talking about
A(2,1) = {[1 2 3; 4 5 6]}
What is this thing doing?
If i ask it what A is i get
ans =
[2x3 double]
How do i index A properly to get back to my data?
Is this making a structure of some sort? If i ask it was A(1,1) is it tells me the same answer
So what are the curly braces doing here? Thanks in advance
Answers (1)
Walter Roberson
on 1 May 2016
0 votes
A{1} would get you back the 2 x 3 matrix.
7 Comments
Robert
on 1 May 2016
Walter Roberson
on 1 May 2016
A = cell(2,1) would create a cell array that is 2 rows one column.
A{2,1} = something would store the something in the second row column 1 of A. Just like with a numeric array, if necessary A will be grown to hold the entry.
You can find the size of the cell array using size().
Each entry of a cell array can contain a different size and data type.
You could think of a "chest of drawers", something like the top part of

Walter Roberson
on 1 May 2016
That is equivalent to
A{2,1} = [1 2 3; 4 5 6];
It is storing the 2 x 3 matrix into the second row first row of the cell array.
Image Analyst
on 2 May 2016
Robert, I really feel that reading the FAQ would help you http://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F. I think it will give you a good idea of how cells work and when to use braces, brackets, and parentheses. Granted, cell arrays are confusing and the FAQ will help. By the way, have you considered using a simpler variable with far less overhead? It's called a table and is good if all the things in a single column are a single type of variable, like a number. Cell arrays are good if the size or type of your variable varies on an element-by element basis, so it's more flexible than tables but far more complicated.
Image Analyst
on 2 May 2016
Trust me - they're one of the most confusing variables in MATLAB. We see it here everyday with users not knowing how to use them. You know that's true. Maybe not complicated for us, but for new users they're complicated - the daily evidence speaks for itself.
Categories
Find more on Logical 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!