用法:
Series.searchsorted(value, side='left', sorter=None)
查找应插入元素以保持顺序的索引。
找到已排序序列
self
中的索引,这样,如果在索引之前插入value
中的相应元素,则将保留self
的顺序。注意
Series 必须单调排序,否则可能会返回错误的位置。 Pandas 不会为您检查此项。
- value:array-like 或标量
要插入
self
的值。- side:{‘left’, ‘right’},可选
如果‘left’,则给出找到的第一个合适位置的索引。如果‘right’,返回最后一个这样的索引。如果没有合适的索引,则返回 0 或 N(其中 N 是
self
的长度)。- sorter:一维array-like,可选
可选的整数索引数组,将
self
排序为升序。它们通常是np.argsort
的结果。
- int 或 int 数组
与
value
具有相同形状的插入点的标量或数组。
参数:
返回:
注意:
二分查找用于查找所需的插入点。
例子:
>>> ser = pd.Series([1, 2, 3]) >>> ser 0 1 1 2 2 3 dtype:int64
>>> ser.searchsorted(4) 3
>>> ser.searchsorted([0, 4]) array([0, 3])
>>> ser.searchsorted([1, 3], side='left') array([0, 2])
>>> ser.searchsorted([1, 3], side='right') array([1, 3])
>>> ser = pd.Series(pd.to_datetime(['3/11/2000', '3/12/2000', '3/13/2000'])) >>> ser 0 2000-03-11 1 2000-03-12 2 2000-03-13 dtype:datetime64[ns]
>>> ser.searchsorted('3/14/2000') 3
>>> ser = pd.Categorical( ... ['apple', 'bread', 'bread', 'cheese', 'milk'], ordered=True ... ) >>> ser ['apple', 'bread', 'bread', 'cheese', 'milk'] Categories (4, object):['apple' < 'bread' < 'cheese' < 'milk']
>>> ser.searchsorted('bread') 1
>>> ser.searchsorted(['bread'], side='right') array([3])
如果值不是单调排序的,则可能会返回错误的位置:
>>> ser = pd.Series([2, 1, 3]) >>> ser 0 2 1 1 2 3 dtype:int64
>>> ser.searchsorted(1) 0 # wrong result, correct would be 1
相关用法
- Python pandas.Series.set_axis用法及代码示例
- Python pandas.Series.set_flags用法及代码示例
- Python pandas.Series.str.isdecimal用法及代码示例
- Python pandas.Series.str.get用法及代码示例
- Python pandas.Series.sample用法及代码示例
- Python pandas.Series.str.replace用法及代码示例
- Python pandas.Series.str.endswith用法及代码示例
- Python pandas.Series.str.isspace用法及代码示例
- Python pandas.Series.str.isdigit用法及代码示例
- Python pandas.Series.str.wrap用法及代码示例
- Python pandas.Series.sparse.to_coo用法及代码示例
- Python pandas.Series.str.isalnum用法及代码示例
- Python pandas.Series.str.zfill用法及代码示例
- Python pandas.Series.sub用法及代码示例
- Python pandas.Series.str.partition用法及代码示例
- Python pandas.Series.str.isnumeric用法及代码示例
- Python pandas.Series.str.startswith用法及代码示例
- Python pandas.Series.sparse.npoints用法及代码示例
- Python pandas.Series.str.count用法及代码示例
- Python pandas.Series.str.rpartition用法及代码示例
注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.Series.searchsorted。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。