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

 采纳的回答

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 个评论

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'.

请先登录,再进行评论。

更多回答(1 个)

Andrei Bobrov waiting you :)

5 个评论

Please try reading the documentation.
doc unique
Type
doc unique
in the command editor and press "Enter"
That's not a very useful statement, I'm afraid. You could always google, as all the documentation is online.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Sparse Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by