Function polars::prelude::apply_multiple

source ·
pub fn apply_multiple<F, E>(
    function: F,
    expr: E,
    output_type: SpecialEq<Arc<dyn FunctionOutputField>>,
    returns_scalar: bool
) -> Expr
where F: Fn(&mut [Series]) -> Result<Option<Series>, PolarsError> + 'static + Send + Sync, E: AsRef<[Expr]>,
Available on crate feature lazy only.
Expand description

Apply a function/closure over the groups of multiple columns. This should only be used in a group_by aggregation.

It is the responsibility of the caller that the schema is correct by giving the correct output_type. If None given the output type of the input expr is used.

This difference with [map_mul] is that [apply_mul] will create a separate [Series] per group.

  • [map_mul] should be used for operations that are independent of groups, e.g. multiply * 2, or raise to the power
  • [apply_mul] should be used for operations that work on a group of data. e.g. sum, count, etc.