Index.asof_locs(where: Index, mask: npt.NDArray[np.bool_]) npt.NDArray[np.intp][source]#

Return the locations (indices) of labels in the index.

As in the pandas.Index.asof(), if the label (a particular entry in where) is not in the index, the latest index label up to the passed label is chosen and its index returned.

If all of the labels in the index are later than a label in where, -1 is returned.

mask is used to ignore NA values in the index during calculation.

  • where (Index) – An Index consisting of an array of timestamps.

  • mask (np.ndarray[bool]) – Array of booleans denoting where values in the original data are not NA.


An array of locations (indices) of the labels from the index which correspond to the return values of pandas.Index.asof() for every element in where.

Return type


See also


Return the label from the index, or, if not present, the previous one.


>>> idx = pd.date_range('2023-06-01', periods=3, freq='D')  
>>> where = pd.DatetimeIndex(['2023-05-30 00:12:00', '2023-06-01 00:00:00',  
...                           '2023-06-02 23:59:59'])
>>> mask = np.ones(3, dtype=bool)  
>>> idx.asof_locs(where, mask)  
array([-1,  0,  1])

We can use mask to ignore certain values in the index during calculation.

>>> mask[1] = False  
>>> idx.asof_locs(where, mask)  
array([-1,  0,  0])


This method has not been implemented yet. Xorbits will try to execute it with pandas.

This docstring was copied from pandas.core.indexes.base.Index.