Extract data from a terra::rast() object.
Usage
fast_extract(x, y, ...)
# S4 method for class 'Raster,Spatial'
fast_extract(x, y, fun = "mean", ...)
# S4 method for class 'Raster,sfc'
fast_extract(x, y, fun = "mean", ...)
# S4 method for class 'SpatRaster,sfc'
fast_extract(x, y, fun = "mean", ...)
# S4 method for class 'Raster,sf'
fast_extract(x, y, fun = "mean", ...)
# S4 method for class 'SpatRaster,sf'
fast_extract(x, y, fun = "mean", ...)Arguments
- x
terra::rast()object.- y
sf::sf()object.- ...
not used.
- fun
charactername of statistic to summarize data. Available options include"sum"or"mean". Defaults to"mean".
Value
A matrix containing the summary amount of each feature
within each planning unit. Rows correspond to different spatial features
in y and columns correspond to different raster layers in x.
Details
The performance of this function for large terra::rast() objects
can be improved by increasing the GDAL cache size.
The default cache size is 25 MB.
For example, the following code can be used to set the cache size to 4 GB.
This function is simply a wrapper that uses
exactextractr::exact_extract() for polygon geometries, and
terra::extract() for other geometry types.
See also
The terra::extract() and exactextractr::exact_extract() functions
are alternatives for extracting raster data.
Examples
# load data
sim_pu_polygons <- get_sim_pu_polygons()
sim_features <- get_sim_features()
# extract data
result <- fast_extract(sim_features, sim_pu_polygons)
# show result
print(head(result))
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] 0.7150548 0.2900901 0.8178213 0.2199663 0.4533809
#> [2,] 0.6990429 0.3052216 0.8064534 0.2713800 0.4413639
#> [3,] 0.6859317 0.3266036 0.7852441 0.3296247 0.4343547
#> [4,] 0.6783193 0.3510977 0.7541320 0.3900085 0.4355628
#> [5,] 0.6782107 0.3750470 0.7131559 0.4468281 0.4474871
#> [6,] 0.6863253 0.3950113 0.6628435 0.4946333 0.4714105
