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 comentarios

madhan ravi
madhan ravi el 23 de Abr. de 2019
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 el 23 de Abr. de 2019
Please post an example of your matrix and what you want to receive.
Amy Hs
Amy Hs el 23 de Abr. de 2019
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}

Iniciar sesión para comentar.

 Respuesta aceptada

Stephen23
Stephen23 el 23 de Abr. de 2019
Editada: Stephen23 el 23 de Abr. de 2019
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) = []

Más respuestas (1)

Andrei Bobrov
Andrei Bobrov el 23 de Abr. de 2019

1 voto

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

Categorías

Más información sobre Programming en Centro de ayuda y File Exchange.

Productos

Versión

R2016a

Preguntada:

el 23 de Abr. de 2019

Comentada:

el 23 de Abr. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by