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

5 Ansichten (letzte 30 Tage)
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 Kommentare
Michael Bochert
Michael Bochert am 13 Sep. 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 am 13 Sep. 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

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Matt J
Matt J am 13 Sep. 2023
Bearbeitet: Matt J am 13 Sep. 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)

Weitere Antworten (0)

Kategorien

Mehr zu Multidimensional Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by