R: Construct a parameter set.

makeParamSet {ParamHelpers} | R Documentation

## Construct a parameter set.

### Description

`makeParamSet`: Construct from a bunch of parameters.

Multiple sets can be concatenated with `c`.

The constructed S3 class is simply a list that contains the element `pars`. `pars` is a list of the passed parameters, named by their ids.

If `keys` are provided it will automatically be checked whether all expressions within the provided parameters only contain arguments that are a subset of keys.

### Usage

    makeParamSet(..., params = NULL, forbidden = NULL, keys = NULL)

    makeNumericParamSet(id = "x", len, lower = -Inf, upper = Inf,
      vector = TRUE)

### Arguments

`...` | [`Param`] Parameters.
`params` | [list of `Param`] List of parameters, alternative way instead of using `...`.
`forbidden` | [`NULL` | R expression] States forbidden region of parameter set via an expression. Every setting which satisfies this expression is considered to be infeasible. This makes it possible to exclude more complex region of the parameter space than through simple constraints or `requires`-conditions (although these should be always used when possible). If parameters have associated trafos, the forbidden region must always be specified on the original scale and not the transformed one. Default is `NULL` which means no forbidden region.
`keys` | [`character`] Character vector with keys (names) of feasible variable names which will be provided via a dictionary/hash later. Default is `NULL`.
`id` | [`character(1)`] Name of parameter.
`len` | [`integer(1)`] Length of vector.
`lower` | [`numeric`] Lower bound. Default is `-Inf`.
`upper` | [`numeric`] Upper bound. Default is `Inf`.
`vector` | [`logical(1)`] Should a `NumericVectorParam` be used instead of n `NumericParam` objects? Default is `TRUE`.

### Value

[`ParamSet` | `LearnerParamSet`]. If all parameters of the `ParamSet` are learner parameters, the output will inherit the class `LearnerParamSet`.

### Examples

    makeParamSet(
      makeNumericParam("u", lower=1),
      makeIntegerParam("v", lower=1, upper=2),
      makeDiscreteParam("w", values=1:2),
      makeLogicalParam("x"),
      makeDiscreteVectorParam("y", len=2, values=c("a", "b"))
    )
    makeParamSet(
      makeNumericParam("u", lower = expression(ceiling(n))),
      makeIntegerParam("v", lower = expression(floor(n)), upper = 2),
      keys = c("p", "n")
    )

[Package ParamHelpers version 1.12 Index]