Hi all, I have two vectors each of two columns, different row length.
A B
I would like to check each row of A with each/all of B (they have different row lengths) and would like to assign '1' for each row A if its value falls in any of row B's values. I could able to achieve the answer in case of one column. Any help in this regard highly appreciated. I have include the data here.

 Réponse acceptée

tmp=[discretize(A,[B(:,1);inf],'Inc','left'),...
discretize(A,[-inf;B(:,2)],'Inc','right')];
out=all(tmp==tmp(:,1),2);

Plus de réponses (1)

out=any(A(:,1)>=B(:,1).' & A(:,2)<=B(:,2).',2);

3 commentaires

Dear Matt, thanks, it works. I am going to accept this answer
Matt J
Matt J le 22 Nov 2022
Modifié(e) : Matt J le 22 Nov 2022
Looks like you accepted the other one by mistake. However, I think the answer below is in fact the most efficient.
Hi Matt thanks, I have accepted this answer now.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Startup and Shutdown dans Centre d'aide et File Exchange

Produits

Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by