I used gdal.Wrap() to resample from a high resolution to a lower. However, my raster has no value (nan). So, when I set resampleAlg, the larger grids with nan(s) will become nan.
Here is my reprex in Python:
from osgeo import gdal
### resample and reproject
### data are from MOD11A2 and MYD11A2, and have been converted into annual mean values
raster_rprj = gdal.Warp("./2015_daytime_mean_re.tif",
"./2015_daytime_mean_clip2.tif", dstSRS = "EPSG:4326",
xRes = 0.008, yRes = 0.008, resampleAlg = "average")
raster_rprj = None
I hope it runs as the function np.nanmean()
Before the resample, you could replace NaN values with averages.
The numpy expression to achieve that is the following:
Where A is the numpy array of your pixels.
You run it like this:
More about GDAL Calc: https://gdal.org/programs/gdal_calc.html
Then you can run the resample.