Comparing Matrices of Differing Dimensions, and Creating a New Matrix which meets a criteria

1 vue (au cours des 30 derniers jours)
I have two row vectors: A = [1 2 2 3 4 5 6], B = [2 1 45 6]
I want all the elements of B that are bigger than A to be eliminated and a new matrix with the remaining elements to be saved.
This is what I have so far:
A(A<=B) = []
But this only works if the matrix dimensions are the same, is there any way to do this comparison and return a matrix which satisfy the condition?
Thanks, Chris
  4 commentaires
KSSV
KSSV le 25 Juil 2020
Modifié(e) : KSSV le 25 Juil 2020
You can make dimensions equal by adding NaN's to smaller array.
A = [1 2 2 3 4 5 6] ;
B = [2 1 45 6] ;
C = NaN(size(A)) ;
C(1:length(B)) = B ;
A(A<=C) =[]
Chris Stout
Chris Stout le 25 Juil 2020
Thank you I will keep this in mind, as there is definitely multiple scenarios I can see where I will need to do this.

Connectez-vous pour commenter.

Réponse acceptée

madhan ravi
madhan ravi le 25 Juil 2020
B(all(A(:) < B)) = []

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by