dataframe-operations-2.4.0.0: Column operations, expression DSL, and statistics for the dataframe ecosystem.
Safe HaskellNone
LanguageHaskell2010

DataFrame.Operations.AggregateScatter

Description

Execute a recognised aggregation plan (AggPlan) through the vectorized scatter kernel, producing one result column (length nGroups, canonical group order). The scatter reductions live in AggKernel (sequential) and AggKernelPar (parallel by disjoint group range); this module handles the compound max - min combine and the holistic grouped median. A plan only reaches here once planAgg verified the value columns are clean unboxed Int/Double, so the error branches are unreachable.

Every reduction takes the Round-5 grouping layout (valueIndices, offsets) so the parallel kernel can split the group-id range across capabilities with no cross-worker merge. Each group's rows stay in original-row order within one worker's range, so results are byte-identical to the sequential path at any -N.

Synopsis

Documentation

runMomentPlan :: GroupedDataFrame -> Int -> MomentPlan -> Maybe [(Text, Column)] Source #

Run a recognised moment (Q9 regression) plan as one fused scatter over the two base columns, returning each output name bound to its moment field. The six sufficient statistics (count, Sx, Sy, Sxx, Syy, Sxy) come out of a single pass, replacing the three derive passes and six independent scatters of the per-expression path. Byte-identical to the sequential kernel at any -N.