How do I index an array/cell array with an array?
Show older comments
I am sorry, it's a very newbie question, but I am nearly lost.
So I have a cell array
data2 = num2cell(magic(5))
And I have an array of size 2.
coord = [x, y]
I want to obtain data2{x,y}
without writing data2{coord(1), coord(2)}
Is it possible to do that?
data2{ coord } gives a completely different result.
Answers (2)
Star Strider
on 29 Nov 2015
0 votes
You have to write ‘data2{coord(1), coord(2)}’. That’s just the way indexing works.
Image Analyst
on 29 Nov 2015
0 votes
If coord is really a 2 element array and not some larger matrix, then you could use sub2ind() but honestly I think that would just make it more cryptic and less maintainable than doing data2{coord(1), coord(2)}.
Categories
Find more on Matrix Indexing 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!