ширина ямы в сэмплах на графике на python без циклов
у меня такая задача: есть массив с числами и нужно рассчитать ширину ямы, то есть сколько элементов в массиве меньше нижней границы ямы. Частный случай: допустим есть массив [101, 34, 56, 89, 203] и шириной ямой будет считаться количество элементов, которые меньше нижней границы -- 101, то есть количество элементов в промежутке от 101 до 203. Но программа, которую я пытаюсь сделать, должна после подсчета ширины переходить к следующему элементу массива и делать его новой нижней границей. Если брать тот же пример с массивом [101, 34, 56, 89, 203], то программа сделает нижней границей элемент 34 и будет считать количество элементов меньше 34, то есть в промежутке от 34 до 56. Таким образом, программа должна пройти по всему массиву и вернуть массив в котором содержатся широты ям. Программа должна быть без циклов, я пытался что то использовать из методов numpy, но неудачно. Подскажите, пожалуйста, как доработать данную программу?
Пока что я смог сделать только расчет ширины ямы без перехода к новому элементу, который будет новой нижней границей:
import pandas as pd
import numpy as np
source_array=300*np.random.rand(20000)
new_array=source_array.copy()
new_array=pd.DataFrame(new_array)
print(source_array)
if len(new_array[new_array[0]>=source_array[0]])>=2:
print('pit widt=', new_array[new_array[0]>=source_array[0]].index[1])
[184.45495904 14.74082638 147.66927182 ... 190.36211263 101.74867737
81.78031107]
pit widt= 5