I need to get MODIS NDVI (MOD13A3), but output from EarthExplorer or Daac2Disk HDF format is a numerical range is -2000 to 9996.

But I need for futher work basic range -1 to 1.

Is there any conversion method?


The product description page says the following:

Science Data Sets

  • (HDF Layers) (11): 1km monthly NDVI
  • BIT: 16-bit
  • TYPE: signed integer
  • FILL: -3000
  • VALID RANGE: -2000, 10000

My first guess would be to multiply your data with 0.0001 to get to the correct NDVI values. You could use an additional conditional statement to set -3000 values to nan/nodata

UPDATE: I guess in your case the fill value might not be set

UPDATE2: Here is the description (p. 5)

"MOD13A3 product
As presented in Table 2, the NDVI value given in MOD13A3 products is a integer (16 bits) and range between -2000 and 10 000. In order to convert these values in NDVI “true” values was necessary to apply a scale factor. Therefore, all the original data were multiplied by 0.0001 and the final values were in the range between -0.2 and 1.0. "

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.