Trying to index into a cell array using columns of a matrix

5 visualizaciones (últimos 30 días)
I am trying to use two columns in a matrix to index into a cell array.
I am trying to use the 2nd column of the matrix to index into the first layer of the cell array, and the 1st column to index into the 2nd layer of the cell array.
For example, if a given row in the two-column matrix looks like this:
[2 1] ---- ("2" corresponds to the value in the first column, "1" corresponds to the value in the 2nd column)
I want to index into the cell array as such:
Cell_array{1}{2}
I want to index into the cell array using every single row of the two-column matrix. Every time these values match, I want to extract the data from the cell array.
Any help would be appreciated! Thank you. I hope this makes sense..
  3 comentarios
Michael Bochert
Michael Bochert el 13 de Sept. de 2023
I have been able to index into it using curly braces twice.. Here is the .mat file :)
Thx for your help!
Dyuman Joshi
Dyuman Joshi el 13 de Sept. de 2023
"Matlab doesn't support such syntax as Cell_array{1}{2}"
@dpb, It does -
C = {{1 [2 3]}}
C = 1×1 cell array
{1×2 cell}
C{1}{2}
ans = 1×2
2 3

Iniciar sesión para comentar.

Respuesta aceptada

Matt J
Matt J el 13 de Sept. de 2023
Editada: Matt J el 13 de Sept. de 2023
I am trying to use two columns in a matrix
Call this matrix I.
to index into a cell array.
Call it C.
Then you could do,
arrayfun(@(i,j) C{j}{i}, I(:,1), I(:,2),'uni',0)

Más respuestas (0)

Categorías

Más información sobre Multidimensional Arrays 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!

Translated by