MATLAB: How to transpose values of arrays between matrices

arraysubstitution

Hi I'm stuck and would be very grateful for any help[- So I have two correlation matrices, all values between -1 and 1: x: 59412×84 y: 59412×315
I have another array z which is 91282×1, which is all zeros except for indices 59472:59555 which are either 1, 2, or 3. LCorr So, I corr(x,y) to get an 84×315 correlation matrix (I'll call it corrxy).
Then I want a winner take all of the columns so I do [~,Indices]=max(abs(corrxy), which produces a 1×315 array with values at each index between 1 and 84. So far so good.
Those values (1 to 84) correspond to the values in "z" (1,2,3) as described above; however it's not the exact indices 1:84 it's the 84 indices 59472:59555. So the issue that's vexing me is how to replace the 315 "1 to 84" values in "Indices" with their corresponding 1,2,or,3 from Z in order to get a 1×315 array with values 1,2,or 3.
Thanks!!!

Best Answer

z = z(:)';
zz = z(59472:59555);
out = zz(Indices);