I have a 3-dimensional matrix C of size (m, n, k), and I have an index array ID of size (m,n) that indexes into the last dimension.
I tried indexing into it like this:
A = C(:,:,ID(:,:))
but that does not work. Is there a more compact way than the following function?
function B = matindex(C, ID) B = zeros(size(ID)); for i = 1:size(C, 1) for j = 1:size(C,2) B(i,j) = C(i, j, ID(i,j)); end end end
Thanks!
Best Answer