How do I index an array/cell array with an array?

1 vue (au cours des 30 derniers jours)
Lockywolf
Lockywolf le 29 Nov 2015
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.

Réponses (2)

Star Strider
Star Strider le 29 Nov 2015
You have to write ‘data2{coord(1), coord(2)}’. That’s just the way indexing works.

Image Analyst
Image Analyst le 29 Nov 2015
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)}.

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by