| Context {mlr3misc} | R Documentation |
Context
Description
Context objects allow Callback objects to access and modify data. The following packages implement context subclasses:
-
ContextOptimizationin bbotk. -
ContextEvalin mlr3tuning. -
ContextTorchinmlr3torch
Details
Context is an abstract base class. A subclass inherits from Context. Data is stored in public fields. Access to the data can be restricted with active bindings (see example).
Public fields
id(
character(1))
Identifier of the object. Used in tables, plot and text output.label(
character(1))
Label for this object. Can be used in tables, plot and text output instead of the ID.
Methods
Public methods
Method new()
Creates a new instance of this R6 class.
Usage
Context$new(id, label = NA_character_)
Arguments
id(
character(1))
Identifier for the new instance.label(
character(1))
Label for the new instance.
Method format()
Format object as simple string.
Usage
Context$format(...)
Arguments
...(ignored).
Method print()
Print object.
Usage
Context$print()
Method clone()
The objects of this class are cloneable with this method.
Usage
Context$clone(deep = FALSE)
Arguments
deepWhether to make a deep clone.
Examples
library(data.table)
library(R6)
# data table with column x an y
data = data.table(x = runif(10), y = sample(c("A", "B"), 10, replace = TRUE))
# context only allows to access column y
ContextExample = R6Class("ContextExample",
inherit = Context,
public = list(
data = NULL,
initialize = function(data) {
self$data = data
}
),
active = list(
y = function(rhs) {
if (missing(rhs)) return(self$data$y)
self$data$y = rhs
}
)
)
context = ContextExample$new(data)
# retrieve content of column y
context$y
# change content of column y to "C"
context$y = "C"