MATLAB Answers

sort matrix according to parity?

2 views (last 30 days)
Tiberius
Tiberius on 22 Feb 2014
Commented: Tiberius on 22 Feb 2014
I have a matrix with many rows and 4 columns, and in one of the columns it's the parity (that is, only single values of 0 or 1). Can I sort this matrix to have the rows disposed according to parity, but alternating? That is, let's say you have this (third column is parity) a=[409 20 1 124; 324 11 1 135; 123 33 0 122; 11 12 0 124] and I want to obtain this: a=[11 12 0 124; 324 11 1 135; 123 33 0 122; 409 20 1 124]. (let's say I want to sort it also by first column, as a second criterion).
Does anyone has any nice idea for this? Thanks

  0 Comments

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 22 Feb 2014
z = sortrows(a,1);
out = zeros(size(a));
out(1:2:end,:) = z(z(:,3)==0,:);
out(2:2:end,:) = z(z(:,3)==1,:);

  1 Comment

Tiberius
Tiberius on 22 Feb 2014
Thank you very much.

Sign in to comment.

More Answers (0)


Translated by