polars.Series.search_sorted#

Series.search_sorted(
element: IntoExpr | np.ndarray[Any, Any] | None,
side: SearchSortedSide = 'any',
) int | Series[source]#

找到应插入元素以保持顺序的索引。

\[a[i-1] < v <= a[i]\]
Parameters:
element

表达式或标量值。

side{‘any’, ‘left’, ‘right’}

如果选择‘any’,则返回找到的第一个合适位置的索引。 如果选择‘left’,则返回找到的最左边合适位置的索引。 如果选择‘right’,则返回找到的最右边合适位置的索引。

示例

>>> s = pl.Series("set", [1, 2, 3, 4, 4, 5, 6, 7])
>>> s.search_sorted(4)
3
>>> s.search_sorted(4, "left")
3
>>> s.search_sorted(4, "right")
5
>>> s.search_sorted([1, 4, 5])
shape: (3,)
Series: 'set' [u32]
[
        0
        3
        5
]
>>> s.search_sorted([1, 4, 5], "left")
shape: (3,)
Series: 'set' [u32]
[
        0
        3
        5
]
>>> s.search_sorted([1, 4, 5], "right")
shape: (3,)
Series: 'set' [u32]
[
        1
        5
        6
]