explode(ds: dataset, {
    "param": value,
    ...
}) -> (ds_out: dataset)

Each element from an exploded list will results in a new row in the resulting dataset, i.e. the tranformation will create a taller dataset than the original, but one that has the same number of columns. Note: to unpack lists into separate columns, see the step unpack_list instead.

explode(ds: dataset, {
    "param": value,
    ...
}) -> (ds_out: dataset)
explode_by
[null, string, array]

The list of columns to explode. Any list columns in the input dataset not mentioned here will not be exploded, i.e. will remain list columns in the output dataset. If null, attempts to explode all columns containing lists.

just_keep
[null, string, array]

Columns to keep in the output dataset. Specifies which non-exploded columns should be included in the output dataset. If null (default), all non-exploded columns will be included. If a string, only that column will be included. If an array of strings, only those columns will be included. Note that columns specified in explode_by will always be included regardless of this parameter.

parallel
boolean
default:"true"

Whether to explode the selected columns together. If true, assumes all specified columns to be exploded are of the same lengths (in any given row). In this case, if a row contains two lists with 5 elements each, this will produce 5 rows with matching elements in the output dataset.

If false, on the other hand, will explode iteratively column-by-column. A row containing two lists with 5 elements each, will therefore produce 25 rows in the output dataset. I.e., exploding the first column will produce 5 rows, and when these rows are exploded again using the second column, each will produce 5 rows in turn.

query
string

The graphext advanced query used to identify the rows to select previous to the grouping.