All Collections
Editor: how to add and edit learning materials
Parametrisation
Which operators are available in parameter definitions?
Which operators are available in parameter definitions?
Are you using parameters and want to know which operations can be performed on the values? The reference below explains it all! Written by Thijs Gillebaart
Updated over a week ago

Note
We are actively expanding the set of operators and are keen to receive feature requests for new operators. Are you missing an operator? Let us know by providing

• a (short) example exercise

• description of the input and output of the operator

• Operator name suggestion

We will quickly get back to you whether we can implement such an operator.

# List of operators

We currently support the following operators in parameter definitions:

## Basic operators

• Random: Generate a random number between two bounds

• Range:  Generate a random number between two bounds, with a specified step

• Formula: Perform an arbitrary expression calculation

• Interval: specify an interval (probability theory)

• Select: Extract a value from a list / matrix

• Unique: Return all unique values of the input list

• Length: Return the length of the input list

• Max: Get the maximum value in a list or set

• Min: Get the minimum value in a list or set

• Round: Round a value to a specified number of decimals with one of several available rounding methods

• Answer rule definition: define a (part of) an answer rule to reuse in multiple answer rules

## Calculus

• Imaginair part: Extract the Imaginair part of an expression

• Real part: Extract the real part of an expression

• Integral: Evaluate the integral of an expression

• Derivative: Evaluate the derivative of an expression

• Limit: Calculate the limit of an expression

• Substitute: Substitute variables in an expression

## Linear Algebra

• Determinant: Calculate the determinant of a matrix

• Column space: Calculate the column-space of a matrix

• Null space: Calculate the null-space of a matrix

• Rank: Calculate the rank of a matrix

• Transpose: Transpose a matrix

• RREF: Calculate the Row Reduced Echelon Form of a matrix

• EigenValues: Calculate the Eigenvalues of a matrix

• EigenVectors: Calculate the Eigenvectors of a matrix

• Shape: Calculates the shape of a matrix

• Diagonalize: Calculates the P and D matrices of an input matrix

## Statistics

• Mean: Get the mean of the values in a list or set

• Median: Get the median of the values in a list or set

• Mode: Get the mode of the values in a list

• Variance: Get the sample or population variance of the values in the list.

• CDF: Calculate the cumulative distribution function of a given distribution.

• PDF: Calculate the probability density function of a given distribution.

• Quantile: Calculate the value of a given quantile of a given distribution

• Standard deviation: Get the sample or population standard deviation of the values in the list

• Dataset: Upload a dataset to the platform

• Sample: Sample rows from a given dataset

• Correlation: Calculates the correlation between two lists of numeric values

• Linear Regression: Perform Ordinary least squares linear regression

## Conversions

• Read Decimal From Base: assume the input is a number (integer) using a specific number base (e.g. binary) and transform it to its decimal number base value.

• Display Decimal As Base: transform the decimal number (integer) input to the specified base (e.g. hexadecimal) to be used for displaying in the text.

• Read expression with mixed numbers: assume that the given expression uses an integer followed by a fraction to represent a mixed number, instead of a multiplication.

• Display expression with mixed numbers: visualise the given expression with mixed number instead of improper fractions.

## Distributions

• Normal: Define a normal distribution with an optional mean and standard deviation

• Student T: Define a Student T distribution with a given degrees of freedom

• Chi-squared: Define a Chi Squared distribution with a given degrees of freedom

# Basic operators

## Random

Input:

• min: minimal value for the range

• max: maximum value for the range

• decimals: number of decimals to round the answer to

Output: A value between min and max rounded to decimals numbers

## Range

Input:

• min: minimal value for the range

• step: the step-size between min and max

• max: maximum value for the range

Output: A value out of the set [min, min+1*step_size, min+2*stepsize, ..., min+n*stepsize, max]

## Formula

Input: any expression, such as numbers, formula's, lists, sets, vectors or matrices

Output: The results of evaluating and simplifying the input.

NOTE: you can specify an interval via the "Interval" operator. See below for more detail.

## Interval

Input: an interval definition. See for more detail "Interval Syntax"

Output: the interval object to use in other operators.

## Select

Input:

• value: any formula expression resulting in a Matrix, Vector, list or Dataset

• first index selector: a selector for the first dimension to select (see comments below)

• second index selector: a selector for the second dimension to select (see comments below). This selector is only used of the value has more than 1 dimension.

Output: The value of the selected dimensions. Depending on the input this can be a list, a matrix, a vector, or a single value.

Index selectors are either

• a single index value (starting the count at 1)

• a list of index values separated by a comma (e.g. "[1,3]")

• a ':' to represent the whole range

• a range in the form of "range_start:range_end" where the "range_end" can be negative which is a short-hand notation for counting back from length (e.g. "1:4" or "2:-1")

Unique

Input: Any formula expression resulting in a list

Output: A list containing all unique values of the input list

## Length

Input: Any formula expression resulting in a list

Output: The number of items in the input list

## Max

Input: Any formula expression resulting in a list or set

Output: Maximum value in input

## Min

Input: Any formula expression resulting in a list or set

Output: Minimum value in input

## Round

Input:

• value: any expression which can be evaluated to a numeric value

• decimals: number of decimals to round to (integer value >= 0)

• method: one of the available methods to be used for rounding.

Output: a numeric value (integer or floating point value).

The available methods are:

• half away from zero
Rounds to the closest decimal and for halves it rounds away from zero, making the method symmetric around zero.
This method rounds 1.25 to 1.3 and -1.25 to -1.3 when rounding to a single decimal.

• half towards zero
Rounds to the closest decimal and for halves it rounds towards zero, making the method symmetric around zero.
This method rounds 1.25 to 1.2 and -1.25 to -1.2 when rounding to a single decimal.

• half towards even
Rounds to the closest decimal and for halves it rounds to the nearest even number at the desired precision, making the method symmetric around zero.
This method rounds 1.25 to 1.2, -1.25 to -1.2, 1.35 to 1.4 and -1.35 to -1.4 when rounding to a single decimal.

• away from zero
Always rounds away from zero. Similar to rounding up, but this method is symmetric around zero.
This method rounds 1.22 to 1.3 and -1.22 to -1.3 when rounding to a single decimal.

• towards zero
Always rounds towards zero. Similar to rounding down, but this method is symmetric around zero.
This method rounds 1.28 to 1.2 and -1.28 to -1.2 when rounding to a single decimal.

• up (ceil)
Always rounds up, making this method non-symmetric around zero.
This methods rounds 1.22 to 1.3 and -1.28 to -1.2 when rounding to a single decimal.

• down (floor)
Always rounds down, making this method asymmetric around zero.
This method rounds 1.28 to 1.2 and -1.22 to -1.3 when rounding to a single decimal.

Input: A (partial) definition of an answer rule

Output: 1 of the defined answer rule is True, 0 otherwise.

# Calculus

## Imaginair part

Input: Any formula expression

Output: The imaginary part of the expression

For more details on the implementation see the underlying function documentation.

## Real part

Input: Any formula expression

Output: The real part of the expression

For more details on the implementation see the underlying function documentation.

## Integral

Input:

• Formula: the formula to integrate

• Argument: the variable which to integrate to

• sub (optional): the lower bounds of the interval to integrate on

• sup (optional): the upper bounds of the interval to integrate on

Output: The integrated formula
For more details on the implementation see the underlying function documentation.

## Derivative

Input:

• Formula: the formula to differentiate

• Argument: the variable which to differentiate to

Output: The differentiated formula
For more details on the implementation see the underlying function documentation.

## Limit

Input:

• Formula: the formula to calculate the limit of

• Argument: the variable to calculate the limit of

• C: the value which argument approaches

• direction (optional, either + or -): the direction in which the limit should be calculated

Output: The limit of formula of argument as argument approaches C
For more details on the implementation see the underlying function documentation.

## Substitute

Input:

• Formula: the formula to substitute values in

• substitutions: a list of tuples (pattern, replacement)

Note: the substitutes need to be done one by one, see the image below as an example on how this looks

Output: The formula in which all patterns are substituted by replacements (in the specified order)
For more details on the implementation see the underlying function documentation.

# Linear Algebra

## Determinant

Input: A matrix

Output: The determinant of matrix

For more details on the implementation see the underlying function documentation.

## Column space

Input: A matrix

Output: List of column vectors that span the column space of the matrix

For more details on the implementation see the underlying function documentation.

## Null space

Input: A matrix

Output: List of column vectors that span the null space of the matrix

For more details on the implementation see the underlying function documentation.

## Rank

Input: A matrix

Output: The rank of the input matrix

For more details on the implementation see the underlying function documentation.

## Transpose

Input: A matrix

Output: The transpose of the input matrix

For more details on the implementation see the underlying function documentation.

## RREF

Input: A matrix

Output: The Row Reduced Echelon Form of the input matrix

For more details on the implementation see the underlying function documentation. Note that we only return a matrix, not the tuple of index columns.

## EigenValues

Input: A matrix

Output: A list with the EigenValues of the input matrix

For more details on the implementation see the underlying function documentation. Note that we return the EigenValues in the same order as the EigenVectors

## EigenVectors

Input: A matrix

Output: A list with the EigenVectors of the input matrix

For more details on the implementation see the underlying function documentation. Note that we return the EigenVectors in the same order as the EigenValues

## Shape

Input: A matrix

Output: Two values, one for the number of rows of the matrix and one for the number of columns of the matrix. These values can be selected as separate placeholder names.

## Diagonalize

Input: A matrix

Output: Two values, one matrix D which is diagonal, and a matrix P such that 𝑃𝐷𝑃^-1 gives the input matrix.

For more details on the implementation see the underlying function documentation.

# Statistics

## Mean

Input: Any formula expression resulting in a list or set

Output: Mean value of the input

## Median

Input: Any formula expression resulting in a list or set

Output: Median value of the input

## Mode

Input: Any formula expression resulting in a list

Output: Mode value of the input

IMPORTANT: you can not apply this operator on multi-modal distributions (e.g. [1,2,2,3,3]). This will result in an error and a warning message.

## Variance

Input:

• Value: Any formula expression resulting in a list or set

• Method: sample (default) or population

Output: the variance of the list or set using the method specified

CDF

Input:

• X: A distribution defined by one of the distribution function

• p: The value on which the CDF needs to be computed

Output:

• The probability that X will take a value less than or equal to p

PDF

Input:

• X: A distribution defined by one of the distribution function

• p: The value on which the PDF needs to be computed

Output:

• The likelihood that X will take the value x

Quantile

Inputs

• X: A distribution defined by one of the distribution function

• p: The required quantile (a number between 0 and 1)

Output

• The value of the quantile x for distribution X

## Standard Deviation

Input:

• Value: Any formula expression resulting in a list or set

• Method: sample (default) or population

Output: the standard deviation of the list or set using the method specified

## Dataset

Input: A file with comma separated values. This file should have column names in the first row, no missing values, and should be less than 2MB in size.

Output: A dataset variable which can be used in other dataset-based operators

## Sample

Input:

• A dataset based variable

• The size of the samples

Output: A dataset variable which can be used in other dataset-based operators

## Correlation

Input:

• Two lists of numeric values. These values can be the result of mathematical expressions, or result of selecting a single column of a dataset using the Select operator.
Note: all values of the lists should be numeric and available. The current operator cannot deal with missing data.

• The method of correlation to use

Output: Two values:

• the estimate of the correlation

• the p-value of the correlation

These values can be selected as separate placeholder names.

## Linear Regression

Input:

• A list of numeric values for the dependent variable,

• A list of lists of numeric values, one for each coefficient B1 ... Bn

These values can be the result of mathematical expressions, or result of selecting a single column of a dataset using the Select operator.

Note: all values of the lists should be numeric and available. The current operator cannot deal with missing data.

Output: Multiple values:

• The coefficient of the constant

• The standard deviation of the coefficient of the constant

• The coefficient of each of B1 ... Bn

• The standard deviation of each coefficient B1 ... Bn

• The R-Squared value of the model

• The adjusted R-Squared value of the model

• The residual standard error of the model

These values can be selected as separate placeholder names.

# Conversions

Input:

• value: an expression to be interpreted as a integer value in the specified number base

• base: one of the four options provided in the dropdown (binary, octal, decimal, hexadecimal

Output: an integer value representing the input in the decimal number.

NOTE: the output has a latex representation without the subscript (10).

## Display Decimal As Base

Input:

• value: an integer value to be displayed in the specified number base

• base: one of the four options provided in the dropdown (binary, octal, decimal, hexadecimal

Output: the value in the specified base with the subscript of the base

NOTE: this value cannot be used as "integer value" in other parameter input field or answer rule field. It can be used for displaying an integer value in a non-decimal base.

## Read expression with mixed numbers

Input:

• value: an expression in which an integer followed by a fraction is meant to represent a mixed number i.s.o. a multiplication.

Output: the parsed expression.

## Display expression with mixed numbers

Input:

• value: an expression

Output: the expression visualised with mixed number instead of improper fractions.

# Distributions

Normal (distribution)

Input:

• The mean of the distribution (default 0)

• The standard deviation of the distribution (default 1)

Output:

• An object representing the configured continuous distribution to be used on some of the statistical functions

Student T (distribution)

Input:

• The degrees of freedom

Output:

• An object representing the configured continuous distribution to be used on some of the statistical functions

Chi-squared (distribution)

Input:

• The degrees of freedom

Output:

• An object representing the configured continuous distribution to be used on some of the statistical functions

# New operators

We are actively expanding the set of operators and are keen to receive feature requests for new operators. Are you missing an operator? Let us know by providing

• a (short) example exercise

• description of the input and output of the operator

• Operator name suggestion

We will quickly get back to you whether we can implement such an operator.

If you have any questions regarding operators or other functionality, please reach out to us via the chat icon in the bottom right.