Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

how to find the equality of 2 numbers?

Asked by Sivakumaran Chandrasekaran

Sivakumaran Chandrasekaran

on 10 Sep 2012
Accepted Answer by Andrei Bobrov

Andrei Bobrov

a e

1 1

1 2

3 2

3 2

The above is my input table. Check 'a' for the value '1'. The corresponding 'e' value differs. So, we should not consider it. Check 'a' the value of '3'. The corresponding 'e' values are same. How to develop code for this?

5 Comments

Yes. As Image Analyst told, 'a' and 'e' are column headers... There is no '' strings'' in my input values

Image Analyst

Image Analyst

on 10 Sep 2012

Then see my answer. Also, what does "class(a)" show when you issue that command? If you want to make absolutely sure a and e are integers, wrap them in an int32() when you create them.

Sivakumaran Chandrasekaran

Sivakumaran Chandrasekaran

Tags

No tags are associated with this question.

Products

4 Answers

Answer by Andrei Bobrov

Andrei Bobrov

on 10 Sep 2012
Accepted answer
AE = [a e]; %The initial array
out = AE(abs(diff(AE,1,2)) < eps(100),:);

1 Comment

Hi Andrei,Thanks. Your answer matches my requirement 90%.. for no.'2' your code works fine. Since there is a deviation in '1' it should not come. You can see the change in the value of 'e' when the value of 'a' is 1. Can you modify the code

Andrei Bobrov

Andrei Bobrov

Answer by Adrian Dronca

Adrian Dronca

on 10 Sep 2012

I think you should consider using isequal() . The function works with single, double, string.

0 Comments

Adrian Dronca

Adrian Dronca

Answer by Image Analyst

Image Analyst

on 10 Sep 2012

If they're integers, use ==, like

if a == e

if they're floating point, you need to check against a tolerance:

if abs(a-e) < 0.0001

See the FAQ for more info: http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F

0 Comments

Image Analyst

Image Analyst

Answer by Sivakumaran Chandrasekaran

Sivakumaran Chandrasekaran

on 12 Sep 2012

When you go through the first two rows, you can find that the change in the values. So, '1' should be omitted. There is no change in 3rd and 4th row.. 'e' value does not gets changed. So, we can consider 'e' .

How to do this??

0 Comments

Sivakumaran Chandrasekaran

Sivakumaran Chandrasekaran

Contact us