TaskClassifST function

Create a Spatiotemporal Classification Task

Create a Spatiotemporal Classification Task

This task specializes mlr3::Task and mlr3::TaskSupervised for spatiotemporal classification problems. The target column is assumed to be a factor. The task_type is set to "classif" and "spatiotemporal".

A spatial example task is available via tsk("ecuador"), a spatiotemporal one via tsk("cookfarm_mlr3").

The coordinate reference system passed during initialization must match the one which was used during data creation, otherwise offsets of multiple meters may occur. By default, coordinates are not used as features. This can be changed by setting coords_as_features = TRUE.

Examples

if (mlr3misc::require_namespaces(c("sf", "blockCV"), quietly = TRUE)) { task = as_task_classif_st(ecuador, target = "slides", positive = "TRUE", coordinate_names = c("x", "y") ) # passing objects of class 'sf' is also supported data_sf = sf::st_as_sf(ecuador, coords = c("x", "y")) task = as_task_classif_st(data_sf, target = "slides", positive = "TRUE") task$task_type task$formula() task$class_names task$positive task$negative task$coordinates() task$coordinate_names }

See Also

Other Task: TaskRegrST, mlr_tasks_cookfarm_mlr3, mlr_tasks_diplodia, mlr_tasks_ecuador

Super classes

mlr3::Task -> mlr3::TaskSupervised -> mlr3::TaskClassif -> TaskClassifST

Active bindings

  • crs: (character(1))

     Returns coordinate reference system of task.
    
  • coordinate_names: (character())

     Coordinate names.
    
  • coords_as_features: (logical(1))

     If `TRUE`, coordinates are used as features. This is a shortcut for `task$set_col_roles(c("x", "y"), role = "feature")` with the assumption that the coordinates in the data are named `"x"` and `"y"`.
    

Methods

Public methods

Method new()

Create a new spatiotemporal resampling Task

Usage

TaskClassifST$new(
  id,
  backend,
  target,
  positive = NULL,
  label = NA_character_,
  coordinate_names,
  crs = NA_character_,
  coords_as_features = FALSE,
  extra_args = list()
)

Arguments

  • id: (character(1))

     Identifier for the new instance.
    
  • backend: (mlr3::DataBackend )

     Either a mlr3::DataBackend , or any object which is convertible to a mlr3::DataBackend with `as_data_backend()`. E.g., am `sf` will be converted to a mlr3::DataBackendDataTable .
    
  • target: (character(1))

     Name of the target column.
    
  • positive: (character(1))

     Only for binary classification: Name of the positive class. The levels of the target columns are reordered accordingly, so that the first element of `$class_names` is the positive class, and the second element is the negative class.
    
  • label: (character(1))

     Label for the new instance. Shown in `as.data.table(mlr_tasks)`.
    
  • coordinate_names: (character(1))

     The column names of the coordinates in the data.
    
  • crs: (character(1))

     Coordinate reference system. WKT2 or EPSG string.
    
  • coords_as_features: (logical(1))

     If `TRUE`, coordinates are used as features. This is a shortcut for `task$set_col_roles(c("x", "y"), role = "feature")` with the assumption that the coordinates in the data are named `"x"` and `"y"`.
    
  • extra_args: (named list())

     Named list of constructor arguments, required for converting task types via `mlr3::convert_task()`.
    

Method coordinates()

Returns coordinates of observations.

Usage

TaskClassifST$coordinates(row_ids = NULL)

Arguments

  • row_ids: (integer())

     Vector of rows indices as subset of `task$row_ids`.
    

Returns

data.table::data.table()

Method print()

Print the task.

Usage

TaskClassifST$print(...)

Arguments

  • ...: Arguments passed to the $print() method of the superclass.

Method clone()

The objects of this class are cloneable with this method.

Usage

TaskClassifST$clone(deep = FALSE)

Arguments

  • deep: Whether to make a deep clone.