Find

I have a matrix 10000×2, named A. The first column is x and the second column is y. I am trying to find the number of element where the following condition holds:
y<x+b && y>x-b
where b is a constant. I used FIND command to achieve this. I want to make sure it is correct. Thank you very much.
numel(find((A(:,2)<A(:,1)+b) & (A(:,2)>A(:,1)-b)))
I would appreciate quick responses :))))))

Answers (2)

Matt Fig
Matt Fig on 6 Jul 2011

0 votes

Use & instead of && when dealing with array comparisons.
Also, this is faster:
sum((A(:,2)<A(:,1)+b) && (A(:,2)>A(:,1)-b))

1 Comment

AP
AP on 6 Jul 2011
that was soooo quick thanks.

Sign in to comment.

Paulo Silva
Paulo Silva on 6 Jul 2011

0 votes

a=randi([1 10],10,2); %make up some data
x=a(:,1);
y=a(:,2);
b=5;
sum(y<x+b & y>x-b)

Categories

Find more on Mathematics and Optimization in Help Center and File Exchange

Tags

Asked:

AP
on 6 Jul 2011

Community Treasure Hunt

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

Start Hunting!