terra (version 1.0-10)

selectRange: Select the values of a range of layers, as specified by cell values in another SpatRaster

Description

Use a single layer SpatRaster object to select cell values from different layers in a multi-layer SpatRaster. The values of the SpatRaster to select layers (y) should be between 1 and nlyr(x) (values outside this range are ignored); they are also truncated to integers.

See rapp for applying af function to a range of variable size.

See extract for extraction of values by cell, point, or otherwise.

Usage

# S4 method for SpatRaster
selectRange(x, y, z=1, repint=0, filename="", overwrite=FALSE, wopt=list(), ...)

Arguments

x

SpatRaster

y

SpatRaster. Cell values must be positive integers. They indicate the first layer to select for each cell

z

positive integer. The number of layers to select

repint

integer > 1 and < nlyr(x) allowing for repeated selection at a fixed interval. For example, if x has 36 layers, and the value of a cell in y=2 and repint = 12, the values for layers 2, 14 and 26 are returned

filename

character. Output filename. Optional

overwrite

logical. If TRUE, filename is overwritten

wopt

list. Options for writing files as in writeRaster

...

additional arguments. None implemented

Value

SpatRaster

See Also

rapp, tapp, extract

Examples

Run this code
# NOT RUN {
r <- rast(ncol=10, nrow=10)
values(r) <- 1
s <- c(r, r+2, r+5)
s <- c(s, s)
set.seed(1)
values(r) <- sample(3, ncell(r), replace=TRUE)
x <- selectRange(s, r)

x <- selectRange(s, r, 3)
# }

Run the code above in your browser using DataCamp Workspace