Skip to main content
For a pair of consecutive numbers x1, x2 in the input column, calculates the difference between x2 and x1 expressed as a percentage of x1, i.e. 100 * (x2 - x1) / x1.

Usage

The following shows how the step can be used in a recipe.

Examples

  • Signature
General syntax for using the step in a recipe. Shows the inputs and outputs the step is expected to receive and will produce respectively. For futher details see sections below.
pct_change(data: number, *sort: column, {
    "param": value,
    ...
}) -> (output: number)

Inputs & Outputs

The following are the inputs expected by the step and the outputs it produces. These are generally columns (ds.first_name), datasets (ds or ds[["first_name", "last_name"]]) or models (referenced by name e.g. "churn-clf").
data
column[number]
required
A numeric column to calculate percentage change for.
*sort
column
An optional column used to sort the rows before calculating the percent change.
output
column[number]
required
A numeric column with the calculated percentages.

Configuration

The following parameters can be used to configure the behaviour of the step by including them in a json object as the last “input” to the step, i.e. step(..., {"param": "value", ...}) -> (output).

Parameters

fill_nan
string
default:"forward"
Method to fill missing values (NaNs). When forward, uses last valid observation to fill a gap. When backwards, uses next valid observation instead.Values must be one of the following:
  • forward
  • backward
fill_nan_max
[integer, null]
Maximum number of consecutive NaNs to fill before stopping.Values must be in the following range:
1fill_nan_max < inf
as_proportion
boolean
default:"false"
Whether to express result as proportion instead of percentage.
ascending
boolean
default:"true"
Whether to sort ascending instead of descending using the sort column before calculating the change.
I