predict_spatial {mlr3spatial} | R Documentation |
Predict on Spatial Objects with mlr3 Learners
Description
This function allows to directly predict mlr3 learners on various spatial objects.
Usage
predict_spatial(
newdata,
learner,
chunksize = 200L,
format = "terra",
filename = NULL
)
Arguments
newdata |
(terra::SpatRaster | stars::stars | sf::sf | raster::RasterStack | raster::RasterBrick ).
New data to predict on. All spatial data formats convertible by as_data_backend() are supported e.g. terra::SpatRaster or sf::sf.
|
learner |
(Learner).
Learner with trained model.
|
chunksize |
(integer(1) )
The chunksize determines in how many subparts the prediction task will be
split into. The value can be roughly thought of as megabyte of a raster file
on disk. For example, if a prediction on a 1 GB file would be carried out
with chunksize = 100L , the prediction would happen in 10 chunks.
The default of chunksize = 1000L might be a good compromise between speed
and memory usage. If you find yourself running out of memory, reduce this
value.
|
format |
(character(1) )
Output class of the resulting object.
Accepted values are "raster" , "stars" and "terra" if the input is a raster.
Note that when choosing something else than "terra" , the spatial object is converted into the respective format which might cause overhead both in runtime and memory allocation.
For vector data only "sf" is supported.
|
filename |
(character(1) )
Path where the spatial object should be written to.
|
Value
Spatial object of class given in argument format
.
Examples
library(terra, exclude = "resample")
# fit rpart on training points
task_train = tsk("leipzig")
learner = lrn("classif.rpart")
learner$train(task_train)
# load raster
stack = rast(system.file("extdata", "leipzig_raster.tif", package = "mlr3spatial"))
# predict land cover classes
pred = predict_spatial(stack, learner, chunksize = 1L)
[Package
mlr3spatial version 0.5.0
Index]