How to avoid loops

I have an array (3xN, day, longitude, temperature), a vector (10 elements long, TestLongitudes), and a longitude tolerance. I'm attempting to, for each day find the longitudes that are with tolerance of any of the TestLongitudes, and return the mean of the temperatures that meet the criteria. I can write a lot of loops to do the comparisons, but I wonder if there's a better way...
Thanks! Bruce

Answers (1)

Star Strider
Star Strider on 22 Feb 2018

0 votes

With respect to comparing the longitudes, the ismembertol function comes quickly to mind. You will have to experiment with it and your data to determine if it’s an appropriate option.
You won’t be avoiding loops, just hiding them. Many of these functions have implicit loops within them.

2 Comments

Bruce
Bruce on 22 Feb 2018
You are, of course, correct about the loops. My assumption is that Mathworks can do it more efficiently than I can :-).
I'll take a look at ismembertol to see if it'll do what I want. Thanks!
It can. The functions are optimised, and I believe in many functions, compiled.
My pleasure!

Sign in to comment.

Asked:

on 22 Feb 2018

Commented:

on 22 Feb 2018

Community Treasure Hunt

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

Start Hunting!