当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python dask.array.searchsorted用法及代码示例


用法:

dask.array.searchsorted(a, v, side='left', sorter=None)

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

此文档字符串是从 numpy.searchsorted 复制的。

可能存在与 Dask 版本的一些不一致之处。

在排序数组a 中查找索引,这样,如果在索引之前插入v 中的相应元素,则将保留a 的顺序。

假设 a 已排序:

side

返回的索引 i 满足

left

a[i-1] < v <= a[i]

right

a[i-1] <= v < a[i]

参数

a一维 数组

输入数组。如果sorter 为None,则必须按升序排序,否则sorter 必须是对其进行排序的索引数组。

varray_like

要插入 a 的值。

side{‘left’, ‘right’},可选

如果‘left’,则给出找到的第一个合适位置的索引。如果‘right’,返回最后一个这样的索引。如果没有合适的索引,则返回 0 或 N(其中 N 是 a 的长度)。

sorter一维数组,可选

可选的整数索引数组,将数组 a 排序为升序。它们通常是 argsort 的结果。

返回

indices整数或整数数组

v 形状相同的插入点数组,如果 v 是标量,则为整数。

注意

二分查找用于查找所需的插入点。

从 NumPy 1.4.0 开始,searchsorted 适用于包含 nan 值的实数/复数数组。 sort 中记录了增强的排序顺序。

此函数使用与内置 python bisect.bisect_left ( side='left' ) 和 bisect.bisect_right ( side='right' ) 函数相同的算法,它们也在 v 参数中进行了矢量化。

例子

>>> np.searchsorted([1,2,3,4,5], 3)  
2
>>> np.searchsorted([1,2,3,4,5], 3, side='right')  
3
>>> np.searchsorted([1,2,3,4,5], [-10, 10, 2, 3])  
array([0, 5, 1, 2])

相关用法


注:本文由纯净天空筛选整理自dask.org大神的英文原创作品 dask.array.searchsorted。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。