Learn R Programming

epm (version 1.1.5)

extractFromEpmGrid: Extract from epmGrid

Description

Return species from intersection between spatial points or polygons and a epmGrid object.

Usage

extractFromEpmGrid(x, spatial, returnCells = FALSE, collapse = TRUE)

Value

A vector of species if collapse = TRUE, or a list of species by cell if collapse = FALSE. If returnCells = TRUE, a vector of cell indices that correspond to the rows in the epmGrid sf object.

Arguments

x

object of class epmGrid

spatial

coordinates as either a spatial points object (sp or sf), a matrix/dataframe with two columns, a numeric vector of c(long, lat), or as a spatial polygon object (sp or sf).

returnCells

boolean, if TRUE, cell indices are returned rather than taxa

collapse

boolean; if TRUE, then a vector of unique species is returned, pooled from all cells, if FALSE, then list is returned with species from every cell as intersected by spatial.

Author

Pascal Title

Details

If spatial is a spatial object, it will be transformed to the same projection as x if needed. If spatial is not a spatial object, it is assumed to be in the same projection as x.

Examples

Run this code
library(sf)
# get the projection of the epmGrid object
proj <- summary(tamiasEPM)$crs
# define some points
pts <- rbind.data.frame(
		c(-120.5, 38.82),
		c(-84.02, 42.75),
		c(-117.95, 55.53))
colnames(pts) <- c('x', 'y')
ptsSF <- st_as_sf(pts, coords = 1:2, crs = "epsg:4326")
pts <- st_coordinates(st_transform(ptsSF, crs = proj))

# extract with table of coordinates
extractFromEpmGrid(tamiasEPM, pts)

# extract with spatial points object
extractFromEpmGrid(tamiasEPM, ptsSF)

# extract with spatial polygon
hull <- st_convex_hull(st_union(ptsSF))
extractFromEpmGrid(tamiasEPM, hull)


# returns each cell's contents
extractFromEpmGrid(tamiasEPM, hull, collapse=FALSE)

# collapses results to unique set of species
extractFromEpmGrid(tamiasEPM, hull, collapse=TRUE)

Run the code above in your browser using DataLab