How to check two unbalanced matrix?
Ältere Kommentare anzeigen
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];
Antworten (2)
Star Strider
am 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 Kommentare
Matlab111
am 25 Jan. 2015
Star Strider
am 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
am 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
am 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
am 25 Jan. 2015
Another way may be:
X=[1;2;3;4;5];
Y=[2];
Z = X(X==Y)
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!