How to rearrange matrix and delet similar value ?

Hi guys
I have matrix and should rearrange matrix and delete similar value as next:
the origin matrix
0 0 10 150 150 0 125 150 0 10 125 150
0 0 80 0 0 70 80 55 70 80 80 55
what I need
0 0 10 125 150 150
0 70 80 80 55 0
What's program i need hould do:
  1. when values of column are similar then delete column that repeated
  2. rearrange column according first line

 Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 16 Juin 2014
Modifié(e) : Andrei Bobrov le 17 Juin 2014
a=[ 0 0 10 150 150 0 125 150 0 10 125 150
0 0 80 0 0 70 80 55 70 80 80 55]
out = unique(a.','rows')'
add
a0 = unique(a.','rows');
t = ismember(a0(:,1),a0(size(a0,1),1));
a0(t,2) = sort(a0(t,2),'descend');
out = a0.';
Please read about functions unique, size, ismember, sort.

2 commentaires

out =
0 0 10 125 150 150
0 70 80 80 0 55
thank you very much andrei
  1. Can you explane the command more than
  2. Can you add to command to put the value according 2nd line when the value of 1st line is same to have result like this :
0 0 10 125 150 150
0 70 80 80 55 0
Please see code in my answer after word 'add'.

Connectez-vous pour commenter.

Plus de réponses (1)

Mech
Mech le 16 Juin 2014

0 votes

Andrei Bobrov waiting you :)

5 commentaires

Please try reading the documentation.
doc unique
Mech
Mech le 16 Juin 2014
How ???
Type
doc unique
in the command editor and press "Enter"
Mech
Mech le 16 Juin 2014
Dosent work
José-Luis
José-Luis le 16 Juin 2014
That's not a very useful statement, I'm afraid. You could always google, as all the documentation is online.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Sparse Matrices dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by