matrix C from A and B
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Firas
el 30 de Mayo de 2014
Editada: Sean de Wolski
el 30 de Mayo de 2014
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
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
Respuesta aceptada
Geoff Hayes
el 30 de Mayo de 2014
Editada: Geoff Hayes
el 30 de Mayo de 2014
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
el 30 de Mayo de 2014
Editada: Sean de Wolski
el 30 de Mayo de 2014
Or use setxor
>> C = setxor(A,B,'rows')
0 comentarios
Ver también
Categorías
Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!