run through a cell content in single loop
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hello,
I try to get data from cell A by its index value(stored in B).
A = cell(1, 10);
B = [1 3 6 8];
How to get first 3rd, 6th, 8th cell content in a single loop?
I tried A{B}, it doesn't work.
If A is a large cell, A = cell(1, 50000); B = [many indice here], I got error:
AA = A(B);
??? Index exceeds matrix dimensions.
1 comentario
Daniel Shub
el 7 de Mzo. de 2011
Are you sure you did not screw something up?
A = cell(1, 50000);
B = randi(50e3, [1, 500e3]);
AA = A(B);
works fine for me. What is the max of your B?
Respuesta aceptada
Matt Tearle
el 7 de Mzo. de 2011
Do you want AA to be a cell array or whatever type the contents are (assuming they're all the same)? In the former case AA = A(B) (with parentheses). In the latter, AA = [A{B}] (with curly braces).
But it sounds like your error message is a simpler issue: the values of B aren't between 1 and numel(A).
0 comentarios
Más respuestas (1)
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!