I have this code here and it does what I want it to do just fine. however theres a lot of repetition. I was wondering if there was a way to make it better, maybe even remove the for loop?
A = randi(10,5,5,5);B = randi(4,5,5);C = zeros(4,1,5);layer1 = A(:,:,1); %separate 3rd dimension
layer2 = A(:,:,2);layer3 = A(:,:,3);layer4 = A(:,:,4);layer5 = A(:,:,5);for i = 1:4 value = B == i; %create a logical index for values from 1-4 in B
C(i,:,1) = mean(layer1(value)); C(i,:,2) = mean(layer2(value)); C(i,:,3) = mean(layer3(value)); C(i,:,4) = mean(layer4(value)); C(i,:,5) = mean(layer5(value)); end
Best Answer