Where to inject element(s) to maintain sorting
Description
Find indices where elements should be inserted to maintain order.
Usage
<Expr>$search_sorted(element)
Arguments
element
|
Element to insert. Can be an Expr or something coercible to an Expr. |
Details
This function looks up where to insert element to keep self column sorted. It is assumed the column is already sorted in ascending order (otherwise this leads to wrong results).
Value
Expr
Examples
#> shape: (5, 1)
#> ┌─────┐
#> │ a │
#> │ --- │
#> │ f64 │
#> ╞═════╡
#> │ 1.0 │
#> │ 3.0 │
#> │ 4.0 │
#> │ 4.0 │
#> │ 6.0 │
#> └─────┘
# in which row should 5 be inserted in order to not break the sort?
# (value is 0-indexed)
df$select(
zero = pl$col("a")$search_sorted(0),
three = pl$col("a")$search_sorted(3),
five = pl$col("a")$search_sorted(5)
)
#> shape: (1, 3)
#> ┌──────┬───────┬──────┐
#> │ zero ┆ three ┆ five │
#> │ --- ┆ --- ┆ --- │
#> │ u32 ┆ u32 ┆ u32 │
#> ╞══════╪═══════╪══════╡
#> │ 0 ┆ 1 ┆ 4 │
#> └──────┴───────┴──────┘