當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。