numpy searchsorted 用法及代码示例
用法:
numpy.searchsorted(a, v, side='left', sorter=None)
查找应在其中插入元素以保持顺序的索引。
将索引查找到排序数组a中,这样,如果v中的相应元素在索引之前插入,则将保留a的顺序。
假设a已排序:
– | 描述 |
---|---|
参数 | a: : 1-D array_like
输入数组。如果sorter为None,则必须按升序对其进行排序,否则sorter必须是对其进行排序的索引数组。 要插入的值。 如果为‘left’,则给出找到的第一个合适位置的索引。如果为‘right’,则返回最后一个这样的索引。如果没有合适的索引,则返回0或N(其中N是a的长度)。 整数索引的可选数组,将数组a升序排列。它们通常是argsort的结果。 1.7.0版中的新功能。 |
返回值: | indices: : 整数数组
与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])
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。