Я пытаюсь найти некоторые значения в np.array
с searchsorted
, и я хотел бы получить результирующий массив с самим собой по модулю смещения.
Я могу сделать это с помощью:
import numpy as np
a = np.array([(1, 3.5), (1, 2.1), (1, 5.8), (1, 0.)])
b = np.arange(0.5, 5.5, 1.)
c = np.searchsorted(b, a[:, 1])
d = np.column_stack((c, c + 1))
но я бы хотел сделать это более напрямую, что-то похожее на:
c = np.column_stack((np.searchsorted(b, a[:, 1]), np.searchsorted(b, a[:, 1]) + 1))
без повторения вызова на np.searchsorted
.
Для примера выше, результат должен быть:
[[3 4]
[2 3]
[5 6]
[0 1]]
Есть идеи?