Index one multidimensional array using another
Ältere Kommentare anzeigen
Hello,
Sorry for the basic question, but I couldn't find an answer on this forum.
Let's say I have two 4D arrays:
A = rand(3,5,4,2);
B = rand(3,5,4,2);
I want to get the max values in A along the third dimension and then pull the corresponding values out of B. What I tried to do was:
[maxs, maxs_ix] = max(A,[],3);
B(maxs_ix);
But this didn't give me the right answer. As a check, I would expect that the following two lines should return the exact same array, but they don't:
maxs;
A(maxs_ix);
Can someone explain what I'm missing, and how to get the values from B that are in the same positions as the maxs of A?
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu Matrix Indexing finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!