---
name: "db.univar"
section: "1grass"
platform: "linux"
package: "grass-doc"
version: "8.4.1-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/db.univar"
---

# db.univar(1grass)

Calculates univariate statistics on selected table column.

## NAME

**db.univar**  - Calculates univariate statistics on selected table column.

## KEYWORDS

database, statistics, attribute table

## SYNOPSIS

**db.univar**\
 **db.univar --help**\
 **db.univar** \[-**eg**\] **table**=*name* **column**=*name*  \[**database**=*name*\]   \[**driver**=*name*\]   \[**where**=*sql\_query*\]   \[**percentile**=*float*\[,*float*,...\]\]   \[**format**=*string*\]   \[--**help**\]  \[--**verbose**\]  \[--**quiet**\]  \[--**ui**\]

### Flags:

- **-e**

  Extended statistics (quartiles and 90th percentile)

- **-g**

  Print stats in shell script style

- **--help**

  Print usage summary

- **--verbose**

  Verbose module output

- **--quiet**

  Quiet module output

- **--ui**

  Force launching GUI dialog

### Parameters:

- **table**=*name* **\[required\]**

  Name of attribute table

- **column**=*name* **\[required\]**

  Name of attribute column on which to calculate statistics (must be numeric)

- **database**=*name*

  Name of database

- **driver**=*name*

  Name of database driver\
   Options: *dbf, odbc, ogr, sqlite, pg*

- **where**=*sql\_query*

  WHERE conditions of SQL statement without ’where’ keyword\
   Example: income \< 1000 and population \>= 10000

- **percentile**=*float\[,float*,...\]

  Percentile to calculate (requires extended statistics flag)\
   Options: *0-100*\
   Default: *90*

- **format**=*string*

  Output format\
   Options: *plain, json, shell*\
   **plain**: Plain text output\
   **json**: JSON (JavaScript Object Notation)\
   **shell**: Shell script style for Bash eval

## DESCRIPTION

*db.univar* calculates basic univariate statistics for numeric attributes in a data table. It will calculate minimum, maximum, range, mean, standard deviation, variance, coefficient of variation, quartiles, median, and 90th percentile. It uses *db.select* to create list values for statistical calculations. *NOTES* If the database and driver are not specified, the default values set in *db.connect* will be used.

## EXAMPLE

In this example, random points are sampled from the elevation map (North Carolina sample dataset) and univariate statistics performed:\

```
g.region raster=elevation -p
v.random output=samples n=100
v.db.addtable samples column="heights double precision"
v.what.rast samples raster=elevation column=heights
v.db.select samples
db.univar samples column=heights
```

## SEE ALSO

*v.db.univar,* *r.univar,* *v.univar,* *db.select,* *d.vect.thematic*

## AUTHORS

Michael Barton, Arizona State University

and authors of *r.univar.sh*

## SOURCE CODE

Available at: db.univar source code (history)

Accessed: Monday Feb 24 17:51:43 2025

Main index \| Database index \| Topics index \| Keywords index \| Graphical index \| Full index

© 2003-2025 GRASS Development Team, GRASS GIS 8.4.1 Reference Manual
