terra (version 1.3-22)

summarize-generics: Summarize

Description

Compute summary statistics for cells, either across layers or between layers (parallel summary).

The following summary methods are available for SpatRaster: any, all, max, min, mean, median, prod, range, stdev, sum, which.min, which.max. See modal to compute the mode and app to compute summary statistics that are not included here.

Because generic functions are used, the method applied is chosen based on the first argument: "x". This means that if r is a SpatRaster, mean(r, 5) will work, but mean(5, r) will not work.

The mean method has an argument "trim" that is ignored.

If pop=TRUE stdev computes the population standard deviation, computed as:

f <- function(x) sqrt(sum((x-mean(x))^2) / length(x))

This is different than the sample standard deviation returned by sd (which uses n-1 as denominator).

Usage

# S4 method for SpatRaster
min(x, ..., na.rm=FALSE)

# S4 method for SpatRaster max(x, ..., na.rm=FALSE)

# S4 method for SpatRaster range(x, ..., na.rm=FALSE)

# S4 method for SpatRaster mean(x, ..., trim=NA, na.rm=FALSE)

# S4 method for SpatRaster median(x, na.rm=FALSE)

# S4 method for SpatRaster stdev(x, ..., pop=TRUE, na.rm=FALSE)

# S4 method for SpatRaster which.min(x)

# S4 method for SpatRaster which.max(x)

Arguments

x

SpatRaster

...

additional SpatRaster objects or numeric values; and arguments filename, overwrite and wopt as for writeRaster

na.rm

logical. If TRUE, NA values are ignored. If FALSE, NA is returned if x has any NA values

trim

ignored

pop

logical. If TRUE, the population standard deviation is computed. Otherwise the sample standard deviation is computed

Value

SpatRaster

See Also

app, Math-methods, modal, which.lyr

Examples

Run this code
# NOT RUN {
set.seed(0)
r <- rast(nrows=10, ncols=10, nlyrs=3)
values(r) <- runif(ncell(r) * nlyr(r))

x <- mean(r)
# note how this returns one layer
x <- sum(c(r, r[[2]]), 5)

# and this returns three layers
y <- sum(r, r[[2]], 5)

max(r)
max(r, 0.5)

y <- stdev(r)
# not the same as 
yy <- app(r, sd)

z <- stdev(r, r*2)
# }

Run the code above in your browser using DataLab