Hey again I want function that gives matrix C from A and B thanks
in fact if we have the same raw in A and B , we delete it and the result will be the matrix C

6 comentarios

Image Analyst
Image Analyst el 30 de Mayo de 2014
So? Do you have a question?
Geoff Hayes
Geoff Hayes el 30 de Mayo de 2014
A little more detail is required...how is C to be constructed from A and B?
Firas
Firas el 30 de Mayo de 2014
in fact if we have the same raw in A and B , we delete it and the result will be the matrix C
Geoff Hayes
Geoff Hayes el 30 de Mayo de 2014
So is your algorithm to find all rows that are distinct in A and B, assuming that A and B have the same number of columns?
Firas
Firas el 30 de Mayo de 2014
yes
Image Analyst
Image Analyst el 30 de Mayo de 2014
firas, it's like pulling teeth to get you to help us help you. I mean, most people would give example arrays for A, B, and C . Sure I can make up something, but why are you putting the burden on us? Why not make it EASY for us to help you ? Here, read this and then fix your post: http://www.mathworks.com/matlabcentral/answers/6200-tutorial-how-to-ask-a-question-on-answers-and-get-a-fast-answer

Iniciar sesión para comentar.

 Respuesta aceptada

Geoff Hayes
Geoff Hayes el 30 de Mayo de 2014
Editada: Geoff Hayes el 30 de Mayo de 2014

0 votos

If your algorithm is to remove all rows that are common to A and B, and we are assuming that these two matrices have the same number of columns, then try the following:
A = [1 2 3; 4 5 6; 7 8 9; 10 20 30];
B = [11 12 13; 4 5 6; 14 15 16; 7 8 9; 17 18 19];
if size(A,2)==size(B,2)
% get the intersection of A and B, i.e. all those rows that are common
[Rows,IA,IB] = intersect(A,B,'rows');
% Rows is a matrix of the rows common to A and B
% IA is all the row numbers in A of those common rows
% IB is all the row numbers in B of those common rows
% remove all those common rows from A and B
A(IA,:) = [];
B(IB,:) = [];
% concatenate what is left to get C
C = [A;B];
end

Más respuestas (1)

Sean de Wolski
Sean de Wolski el 30 de Mayo de 2014
Editada: Sean de Wolski el 30 de Mayo de 2014

0 votos

Or use setxor
>> C = setxor(A,B,'rows')

Categorías

Preguntada:

el 30 de Mayo de 2014

Editada:

el 30 de Mayo de 2014

Community Treasure Hunt

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

Start Hunting!

Translated by