How to compare two matrix and then count each elements?

3 visualizaciones (últimos 30 días)
suchismita
suchismita el 6 de Jun. de 2018
Editada: Stephen23 el 10 de Jun. de 2018
The elements of A will be checked and compared with B, with each element count S will increase and with each absence count R will increase.
A=[3 5 7]
B=[1 3 4 5 7]
  5 comentarios
Stephen23
Stephen23 el 8 de Jun. de 2018
"I want to count how many similar elements are there in A in compare to B"
That is what my answer does. You might also like to read about intersect and setdiff.
suchismita
suchismita el 8 de Jun. de 2018
S = nnz(ismember(A,B)) this is working but if I am changing value of A as A= [2 5 7] then I want my answer as S=2 and R=1

Iniciar sesión para comentar.

Respuesta aceptada

Stephen23
Stephen23 el 6 de Jun. de 2018
Some variety of these might do what you want (although those examples are not very enlightening)
>> S = nnz(ismember(A,B))
S = 3
>> R = nnz(ismember(B,A))
R = 3
  2 comentarios
suchismita
suchismita el 9 de Jun. de 2018
please help me. S value is OK but how can I count dissimilar value.
Stephen23
Stephen23 el 10 de Jun. de 2018
Editada: Stephen23 el 10 de Jun. de 2018
"but how can I count dissimilar value."
ismember returns a logical array. Negate that array to get the dissimilar values:
~ismember(...)

Iniciar sesión para comentar.

Más respuestas (1)

Pratik Panchal
Pratik Panchal el 6 de Jun. de 2018
It is not clear whether S and R are increasing if the values of A are same as values of B or regardless. Also what do you mean by 'absence'?
Anyway for the comparison You can use a for loop in this.
for k=1:length(A)
for j=1:length(B)
if A(k)==B(j);
%Insert your condition here
else
%Insert your second condition here
end
end

Categorías

Más información sobre Matrix Indexing 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!

Translated by