t.rast.univar(1)
π t.rast.univar β the manual, but make it make sense π
okay bestie, gather round, because t.rast.univar is about to become your new obsession. it's a GRASS GIS module that calculates univariate statistics from the non-null cells for each registered raster map of a space time raster dataset. that's the whole vibe. periodt. β¨
KEYWORDS: temporal, statistics, raster, time, parallel π
β¨ SYNOPSIS β¨
t.rast.univar
t.rast.univar --help
t.rast.univar [-eru] input=name [zones=name] [nprocs=integer]
[output=name] [percentile=float[,float,...]] [where=sql_query]
[region_relation=string] [separator=character] [--overwrite]
[--help] [--verbose] [--quiet] [--ui]
π Flags
-eβ Calculate extended statistics. the little upgrade that changes everything π-rβ Use the raster map regions for univar statistical calculation instead of the current region-uβ Suppress printing of column names. no headers, no small talk π«Ά--overwriteβ Allow output files to overwrite existing files--helpβ Print usage summary--verboseβ Verbose module output--quietβ Quiet module output--uiβ Force launching GUI dialog
πΈ Parameters
input=name[required] β Name of the input space time raster dataset. yes queen, this one's mandatory, no skipping πzones=nameβ Raster map used for zoning, must be of typeCELLnprocs=integerβ Number of threads for parallel computing. Default:1output=nameβ Name for output filepercentile=float[,float,...]β Percentile to calculate (requires extended statistics flag). Options:0-100where=sql_queryβ WHERE conditions of SQL statement without 'where' keyword used in the temporal GIS framework. Example:start_time > '2001-01-01 12:30:00'region_relation=stringβ Process only maps with this spatial relation to the current computational region. Options:overlaps,contains,is_containedseparator=characterβ Field separator character between the output columns. Special characters:pipe,comma,space,tab,newline. Default:pipe
β¨ DESCRIPTION β¨
so, t.rast.univar calculates univariate statistics from the non-null cells for each registered raster map of a space time raster dataset. that's the mission statement, and it ate. π₯
By default it returns the name of the map, the semantic label of the map, the start and end date of the map and the following values: mean, minimum and maximum vale, mean_of_abs, standard deviation, variance, coeff_var, number of null cells, total number of cells. (yes, "vale" β that's what the original says, i'm not gonna gaslight you about it π)
Using the e flag it can calculate also extended statistics: first quartile, median value, third quartile and percentile 90. lowkey iconic behavior tbh.
If a zones raster map is provided, statistics are computed for each zone (category) in that input raster map. The zones option does not support space time raster datasets (STRDS) but only a single, static raster map. > heads up bestie: single static raster only, don't try to slide a STRDS in there, it will not work π
Space time raster datasets may contain raster maps with varying spatial extent like for example series of scenes of satellite images. With the region_relation option, computations can be limited to maps of the space time raster dataset that have a given spatial relation to the current computational region. Supported spatial relations are:
- "overlaps": process only maps that spatially overlap ("intersect") with the current computational region
- "is_contained": process only maps that are fully within the current computational region
- "contains": process only maps that contain (fully cover) the current computational region
π EXAMPLE π
Obtain the univariate statistics for the raster space time dataset "tempmean_monthly" (precision reduced to 2 decimals in this example):
t.rast.univar -e tempmean_monthly
id|start|end|mean|min|max|mean_of_abs|stddev|variance|coeff_var|sum|null_cells|cells|first_quartile|median|third_quartile|percentile_90
2009_01_tempmean@climate_2009_2012|2009-01-01 00:00:00|2009-02-01 00:00:00|3.90|-3.38|7.43|3.95|1.79|3.20|45.91|1977967.31|503233|1010600|2.80|3.92|5.21|6.23
2009_02_tempmean@climate_2009_2012|2009-02-01 00:00:00|2009-03-01 00:00:00|5.91|-1.82|8.01|5.92|1.63|2.65|27.53|2999555.60|503233|1010600|5.44|6.26|7.07|7.48
...
2012_11_tempmean@climate_2009_2012|2012-11-01 00:00:00|2012-12-01 00:00:00|8.03|1.79|10.91|8.03|1.32|1.73|16.41|4072472.77|503233|1010600|7.49|8.13|8.96|9.48
2012_12_tempmean@climate_2009_2012|2012-12-01 00:00:00|2013-01-01 00:00:00|8.71|1.76|11.98|8.71|1.72|2.95|19.74|4418403.77|503233|1010600|7.84|8.95|9.99|10.67
look at all those columns go π
π¦ SEE ALSO π¦
t.create, t.info t.create,
π AUTHOR π
- SΓΆren Gebbert, ThΓΌnen Institute of Climate-Smart Agriculture
- Stefan Blumentrath (support for zones, parallel processing, and spatial relations)
π SOURCE CODE π
Available at: t.rast.univar source code (history)
Accessed: Saturday Jan 17 05:41:53 2026
Main index | Temporal index | Topics index | Keywords index | Graphical index | Full index
Β© 2003-2025 GRASS Development Team, GRASS GIS 8.4.2 Reference Manual
and that's the whole page bestie π this was GRASS 8.4.2, manual for t.rast.univar (1), accessed Saturday Jan 17 05:41:53 2026, Β© 2003-2025 GRASS Development Team π
π¦ where this page comes from
- fedora 44: grass 8.4.2-4.fc44 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms