I would like to make the sum of 12 input rasters in order to have one output raster, the sum. I run this code, that works, but the output raster has all the cells with invalid data (1.79769e+308). If I make the same calculation manually, not in a python script, with the Raster Calculator, it gives me the right result. Can someone tell me where I make mistake?
import qgis
import gdal
from qgis.analysis import QgsRasterCalculator, QgsRasterCalculatorEntry
from qgis.core import QgsRasterLayer
suffix_input=['I_jan', 'I_feb', 'I_mar', 'I_apr', 'I_may', 'I_jun', 'I_jul', 'I_aug', 'I_sep', 'I_oct', 'I_nov' ,'I_dec']
inputpath = '/Users/macbook/Desktop/TESI/PROGETTO/I/'
expr = ''
rasters = []
for i, suffix in enumerate(suffix_input):
inputrasterfile = QgsRasterLayer(inputpath + suffix + ".tif", suffix)
rasters.append(inputrasterfile)
expr = expr + '"{}@1"+'.format(suffix)
expr = expr.rstrip('+')
print(expr)
alg_params = {
'CELLSIZE': 0,
'CRS': None,
'EXPRESSION': expr,
'EXTENT': rasters[0].extent(),
'LAYERS': rasters,
'OUTPUT': '/Users/macbook/Desktop/TESI/PROGETTO/Itot2.tif'
}
result = processing.run('qgis:rastercalculator', alg_params)
iface.addRasterLayer('/Users/macbook/Desktop/TESI/PROGETTO/Itot2.tif')