How to check two unbalanced matrix?
Afficher commentaires plus anciens
For example:
X=[1;2;3;4;5];
Y=[2];
if this matched than i should get Z as matched value like this
Z=[2];
Réponses (2)
Star Strider
le 25 Jan 2015
I don’t understand what you are doing or what ‘matched’ means.
It would seem that the intersect function might be what you want:
Z = intersect(X,Y)
that would produce:
Z =
2
4 commentaires
Matlab111
le 25 Jan 2015
Star Strider
le 25 Jan 2015
I would use intersect, as I suggested in my original Answer. If ‘b’ is an element of ‘a’, then ‘Z’ will display it. If it is not, ‘Z’ will simply return an empty matrix.
Image Analyst
le 25 Jan 2015
It may not work with floating point numbers if the numbers were arrived at in different ways. See http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F
Star Strider
le 25 Jan 2015
True.
In that event, it would be necessary to use the R2014b version of round on both, or equivalently:
roundn = @(x,n) fix(x.*10.^n)./10.^n;
wnere x is the number (or matrix) to be rounded, and n the number of digits to be rounded to.
Shoaibur Rahman
le 25 Jan 2015
Another way may be:
X=[1;2;3;4;5];
Y=[2];
Z = X(X==Y)
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!