Re: Where() with multidimensional array? [message #30180] |
Thu, 11 April 2002 07:45  |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Olaf Stetzer (olaf.stetzer@imk.fzk.de) writes:
>>> What I want is the max and min values within data (twodimensional)
>>> but I want to exclude all values which are equal failvalue). Maybe there
>>> is an easy way to do this?
>>
>>
>> valid = Where( ( (data EQ Max(data)) OR (data EQ Min(data)) ) AND $
>> (data NE failvalue) )
>
> Uhmm, but that returns wrong values if failvalue is the max or min itself?
Yeah, I was trying to finish this before I had to get
my sons to school and I was trying to be WAY to clever.
You were doing the correct thing before.
>> Be aware that if you use these Boolean operators with floating point
>> data that you may not get what you expect. With floats we usually
>> look for values within some small delta value of the target.
>
> In my case its exactly the value defined in failvaue. I get my data from
> a mysql database and convert all NULL-values (=missing data) into a
> predefined value, in this case -99999. This is in all cases below the
> minimum of my data, but min(data) should return the minimum of the valid
> data only!
You will be fine once you get a better test case. :-)
Cheers,
David
--
David W. Fanning, Ph.D.
Fanning Software Consulting
Phone: 970-221-0438, E-mail: david@dfanning.com
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Toll-Free IDL Book Orders: 1-888-461-0155
|
|
|