Azzera filtri
Azzera filtri

I want to compare two arrays and check that which value is missing in second array as compared to first one?

22 visualizzazioni (ultimi 30 giorni)
A=[ 0 1 1 ;
1 1 0 ];
target=[1 2 3 4];
[m,n]=size(A);
c1=0;cover1=[];sum_coord=[];sss=0;
for i=1:m
cc=0;t_coordinate=[];
for j=1:n
if A(i,j)==1
cc=cc+1;
t_coordinate(cc,:)=j;
sss=sss+1;
sum_coord(sss,:)=t_coordinate(cc,:);
end
end
display(t_coordinate)
end
sum_coord=sort(sum_coord);
sum_coord=unique(sum_coord);
display(sum_coord)
first array is "Target" and second is "sum_coord"....

Risposta accettata

Rik
Rik il 4 Lug 2021
Modificato: Rik il 4 Lug 2021
You should avoid variable names like sum, as that will prevent you from using the sum function.
Your question sounds like you need the ismember function. However, it is unclear how your code relates to the question in the title.
  3 Commenti
Rik
Rik il 4 Lug 2021
Did you try to google the documentation for the ismember function?
A=[ 0 1 1 ;
1 1 0 ];
target=[1 2 3 4];
[m,n]=size(A);
c1=0;cover1=[];sum_coord=[];sss=0;
for i=1:m
cc=0;t_coordinate=[];
for j=1:n
if A(i,j)==1
cc=cc+1;
t_coordinate(cc,:)=j;
sss=sss+1;
sum_coord(sss,:)=t_coordinate(cc,:);
end
end
end
sum_coord=sort(sum_coord);
sum_coord=unique(sum_coord);
disp(sum_coord)
1 2 3
L=ismember(target,sum_coord);
ismissing=target( ~L );
disp(ismissing)
4

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by