[GRASS-user] Univariate statistics with a moving temporal window over a STRDS

Dear all,

I would like to calculate a running univariate statistics over a Space Time Raster Dataset: e.g. for each day the maximum temperature looking up to three days back.

In t.rast.algebra, I can use temporal buffering (buff_t() function) or temporal offset for that purpose, but functions like min(), max(), median(), are not supported.

t.rast.aggregate is not suitable because it does not allow for overlapping aggregation…

Any idea how to achieve that? Did I overlook a relevant module?

Cheers,

Stefan

Hi Stefan,

Nice problem you have on hands… you are right that min(), max(), median() are not supported in t.rast.algebra… a pity since since that would be the optimum (we could open a feature request for this as to remember).

The only thing I can think of (though not elegant) is to use the where option in t.rast.aggregate setting the date and with 3 days granularity and min (max or median) method. Then cycle over starting dates… instead looking backwards, you go forward in time but iterate over each day…

Then, there’s Luca’s add-on, t.rast.what.aggr, that allows to estimate stats backwards in time but for a vector of points with date as attribute: https://grass.osgeo.org/grass76/manuals/addons/t.rast.what.aggr.html

I added Thomas Leppelt in cc, maybe he has a better idea since Sören and him were the authors of the temporal algebra (sorry for double posting Thomas, I do not know if you are in the list)

best,
Vero

El mar., 25 feb. 2020 a las 6:02, Stefan Blumentrath (<Stefan.Blumentrath@nina.no>) escribió:

Dear all,

I would like to calculate a running univariate statistics over a Space Time Raster Dataset: e.g. for each day the maximum temperature looking up to three days back.

In t.rast.algebra, I can use temporal buffering (buff_t() function) or temporal offset for that purpose, but functions like min(), max(), median(), are not supported.

t.rast.aggregate is not suitable because it does not allow for overlapping aggregation…

Any idea how to achieve that? Did I overlook a relevant module?

Cheers,

Stefan


grass-user mailing list
grass-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-user