# Raster Values: Numerical Summaries

To compute Numerical Summaries for the cells of each layer we can use:

- The 'summary' function, which calculate minimum, 1st quartile, median, 3rd quartile, maximum, and the number of cells containing missing data. Summary is a generic function; however, it invokes particular methods depending on the class of the first argument.
- The 'cellStats' function from the 'raster' package, which computes individual summary statistics (e.g. 'mean', 'sd',…).

We can also use functions in the 'base' and 'stats' packages (e.g. 'mean', 'sd',…), provided in the R installation. However, they raster need to be previously converted to values (using the 'values' function in the 'raster' package) and it would apply to the whole Raster* object. That is, this approach would work fine for a single layer raster. However, for multi-layer rasters it would return the mean (or sd,….) of the hole Raster* object, rather than for individual raster layers as 'cellStats'.

**EXAMPLES**

Below examples of the computation of numerical summaries for raster layers in R are presented. These examples are taken from the “Effects of Cyclone Yasi on Green Cover at Mission Beach” tutorial. Putting the code snippets in context, by looking at a broader section of the R script, could be benefitial. Boxes with grey background contain *code snippets*, and boxes with white background containt *code (text) outputs.*

**Multiple numerical summary statistics using the function ‘summary’ from the ‘base’ package**

.

```
#==================================================================================
# Explore SPGC values in both Seasons (Winter 2010 vs Winter 2011)
#==================================================================================
#----------------------------------------------------------------------------------
# Numerical Summary of SPGC Values for both Seasons
#----------------------------------------------------------------------------------
# Summary Statistics (Min, 1st Quartile, Median, 3rd Quartile, Max, and Number of NA's)
summary(SPGC.StudyArea.2010q3_2011q3.rb)
```

.

```
## SPGC_2010q3 SPGC_2011q3
## Min. 39.21569 39.21569
## 1st Qu. 67.05882 67.84314
## Median 68.62745 69.41176
## 3rd Qu. 70.19608 70.58824
## Max. 77.25490 76.86275
## NA's 0.00000 0.00000
```

.

.

.

**Individual summary statistics using the function ‘cellStats’ from the ‘raster’ package**

.

*RasterLayer object*

.

`cellStats(SPGC.StudyArea.2010q3.rl, mean)`

.

`## [1] 68.12031`

.

.

*RasterBrick object*

.

```
# Mean
cellStats(SPGC.StudyArea.2010q3_2011q3.rb, mean)
```

.

```
## SPGC.SA.2010q3 SPGC.SA.2011q3
## 68.12031 68.81528
```

.

.

.

**Individual summary statistics using statistical functions from the ‘base’ package (e.g. ‘mean’, ‘sd’)**

.

```
# Summary funtions provided in the R installation in combination with the function `values` (from the `raster` package),
# provide a Summary Statistics for the whole Raster* object.
# This works fine for a single layer raster
```

.

.

*RasterLayer object*

.

`mean(values(SPGC.StudyArea.2010q3.rl))`

.

`## [1] 68.12031`

.

.

*RasterBrick object*

Applying the ‘mean’ function on a Multi-Layer Raster object summarises the values in all the layers into a single value. This behaviour is different that obtained using the ‘cellStats’ function with the argument ‘mean’, which returned a summary value for each layer (see above).

.

` mean(values(SPGC.StudyArea.2010q3_2011q3.rb))`

.

`## [1] 68.46779`

.

.

` mean(cellStats(SPGC.StudyArea.2010q3_2011q3.rb, mean))`

.

`## [1] 68.46779`

.

.

.