MatLab accumarray unexpectedly changing ordering
问题 As long as I understood accumarray, it means "Making the nth row of the output: 1) find n in sub. 2) if n is in m1, m2, m3 th element in sub, 3) apply the function to m1,m2,m3 th element of val 4) that's the nth row of the output" Am I wrong somewhere? I ran the following code. A = [2 10 13 ; 1 11 14; 1 12 10] [U,ix,iu]= unique(A(:,1)) vals = reshape(A(:, 2:end).', [], 1) subs = reshape(iu(:, ones(size(A, 2)-1,1)).', [], 1) r2 = accumarray(subs, vals', [], @(x){x'}) r2{1} r2{2} A = 2 10 13 1