selecting unique rows

I have an matrix of 6 columns,all columns have repeated numbers,now i want to select only unique values of that matrix ,please help

 採用された回答

Andrei Bobrov
Andrei Bobrov 2012 年 1 月 18 日

0 投票

EDIT [23:27(UTC+4) 18.01.2012]
a = [1 2 7 8 9 0
2 2 71 2 4 1];
out0 = a(all(diff(sort(a,2),1,2) > 1e4*eps,2),:)
out1 = sortrows(out0);
loc = [true;all(diff(out1,1,1),2)];
out = out1(loc,:);

1 件のコメント

kash
kash 2012 年 1 月 18 日
andrei am not gtting exact result plz look at my file and result
http://www.sendspace.com/file/knqbjv
every column has same values,,i nees only unique values in every column

サインインしてコメントする。

その他の回答 (2 件)

TAB
TAB 2012 年 1 月 18 日

0 投票

Type
>> doc unique
on your command window
Wayne King
Wayne King 2012 年 1 月 18 日

0 投票

C = unique(A,'rows');
Selects the unique rows of the matrix A in sorted order. Is that what you mean?

6 件のコメント

kash
kash 2012 年 1 月 18 日
no wayne not in sorted order,I have 6 columns in that i have many repeating numbers
ex
1 2 7 8 9 0
2 2 71 2 4 1
2 10 3 8 5 0
my matrix has many repeated numbers,1st,2nd 4th,6th,i need only unique values
Wayne King
Wayne King 2012 年 1 月 18 日
then just unique(A)
kash
kash 2012 年 1 月 18 日
no wayne i tried this and did not get result
Wayne King
Wayne King 2012 年 1 月 18 日
I think you need to make your use case clearer, with your above example, show us what you want the output to look like.
kash
kash 2012 年 1 月 18 日
i my matrix my first column has repeated values
so
1 2 7 8 9 0
2 2 71 2 4 1
now 2nd column has repeating values
si i need as
1 2 7 8 9 0
like this i have 32000 rows and 6 columns
Andrei Bobrov
Andrei Bobrov 2012 年 1 月 18 日
a = [1 2 7 8 9 0
2 2 71 2 4 1];
out = a(all(diff(sort(a,2),1,2) > 1e4*eps,2),:)

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeShifting and Sorting Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by