A command like "unique" for matrices?

Hi guys,
Is there any command like "unique" for matrices?
I have a major matrice (mother) , and that involve few minor matrices, some of are repeated randomly
i'm looking for a command for delete repeated ones and do something like unique ,
anybody knows how?

3 件のコメント

madhan ravi
madhan ravi 2019 年 4 月 23 日
Well without illustration it’s not clear , sounds like unique is what you need. Better an example with an explicit example would be great.
Andrei Bobrov
Andrei Bobrov 2019 年 4 月 23 日
Please post an example of your matrix and what you want to receive.
Amy Hs
Amy Hs 2019 年 4 月 23 日
thanks for your reply
see,
we have 3 matrices,
A=[1;2;3] ; B=[1;2;3] ; C=[4;5;6];
all of them are in another matrice (call it R)
R={A;B;C}
as you see A & B 's first column are the same,
i want to delete one of them (A or B) and the result must be like below:
R={A;C}

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

 採用された回答

Stephen23
Stephen23 2019 年 4 月 23 日
編集済み: Stephen23 2019 年 4 月 23 日

1 投票

A general solution that does not concatenate the data and works for any size arrays:
% Fake data:
A = [1;2;3];
B = [1;2;3];
C = [4;5;6];
R = {A;B;C}
% Method:
N = numel(R);
X = false(1,N);
for ii=2:N
Y=false;
for jj=1:ii-1
Y = Y || isequal(R{ii},R{jj});
end
X(ii) = Y;
end
R(X) = []

その他の回答 (1 件)

Andrei Bobrov
Andrei Bobrov 2019 年 4 月 23 日

1 投票

A=[1;2;3];
C=[4;5;6];
M = [repmat(A,2,1);C];
out = reshape(unique(reshape(M,3,[])','rows','stable')',[],1);

カテゴリ

ヘルプ センター および File ExchangeProgramming についてさらに検索

製品

リリース

R2016a

質問済み:

2019 年 4 月 23 日

コメント済み:

2019 年 4 月 23 日

Community Treasure Hunt

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

Start Hunting!

Translated by