/
Measure_properties.R
43 lines (40 loc) · 1.2 KB
/
Measure_properties.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#' @title Query properties of measures.
#'
#' @description
#' Properties can be accessed with `getMeasureProperties(measure)`, which returns a
#' character vector.
#'
#' The measure properties are defined in [Measure].
#' @template arg_measure
#' @param props ([character])\cr
#' Vector of properties to query.
#' @return `getMeasureProperties` returns a character vector with measure properties.
#' `hasMeasureProperties` returns a logical vector of the same length as `props`.
#' @name MeasureProperties
#' @rdname MeasureProperties
#' @aliases getMeasureProperties hasMeasureProperties
NULL
#' @rdname MeasureProperties
#' @export
getMeasureProperties = function(measure) {
assertClass(measure, classes = "Measure")
measure$properties
}
#' @rdname MeasureProperties
#' @export
hasMeasureProperties = function(measure, props) {
assertClass(measure, classes = "Measure")
assertSubset(props, listMeasureProperties())
props %in% getMeasureProperties(measure)
}
#' @title List the supported measure properties.
#'
#' @description
#' This is useful for determining which measure properties are available.
#'
#' @return ([character]).
#'
#' @export
listMeasureProperties = function() {
mlr$measure.properties
}