У меня есть два массива
a = np.array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16])
b = np.array([0,5,10,15])
Я хочу выходной массив с длиной b
, где каждый элемент b[i]
является индексом первого элемента a
, который по крайней мере b[i]
:
out = np.array([0, 5, 10, 15]
Медленное решение:
out = []
for x in b:
i = np.argmax( a >= x )
out.append( i )
, и это незначительное увеличение скорости:
out = []
i=0
for x in b:
i = np.argmax( a[i:] >= x ) + i
out.append( i )
Любые идеи для чистого решения с пустыми краями?Это непомерно медленно.Спасибо