[Numpy-discussion] subdivide array

Gerrit Holl gerrit.holl@gmail....
Tue Nov 30 11:51:02 CST 2010


On 30 November 2010 17:58, Pierre GM <pgmdevlist@gmail.com> wrote:
> On Nov 30, 2010, at 5:40 PM, John wrote:
>> I have an array of data for a global grid at 1 degree resolution. It's
>> filled with 1s and 0s, and it is just a land sea mask (not only, but
>> as an example). I want to be able to regrid the data to higher or
>> lower resolutions (i.e. 0.5 or 2 degrees). But if I try to use any
>> standard interp functions, such as mpl_toolkits.basemap.interp it
>> fails -- I assume due to the data being binary.
>>
>> I guess there may be a fairly easy routine to do this?? Does someone
>> have an example?
>
> Just a random idea: have you tried to convert your input data to float? Hopefully you could get some values between 0 and 1 for your interpolated values, that you'll have to transform back to integers following a scheme of your choosing...

I would argue that some float between 0 and 1 is an excellent
representation when regridding a binary land-sea-mask onto a higher
resolution. After all, this information is not there. Why should a
land-sea mask be binary anyway? As if a grid-cell can only be fully
ocean or fully land...

BTW, I just realised Pythons convention that negative indices count
from the end of the array is perfect when using a 180x360
land-sea-mask, as lon[-30] and lon[330] mean and should mean the same
:)

Gerrit.

--
Gerrit Holl
PhD student at Department of Space Science, Luleå University of
Technology, Kiruna, Sweden
http://www.sat.ltu.se/members/gerrit/


More information about the NumPy-Discussion mailing list