Попробуйте это:
def check_regularity(intervals):
average = intervals.mean()
regular = all(intervals < average * 1.2) and all(intervals > average * 0.8)
print(f'The intervals are {"not " * regular}irregular.')
check_regularity(np.array([92, 97, 97, 99, 99, 99, 97, 97, 98, 97, 99, 98, 95]))
check_regularity(np.array([92, 97, 37, 99, 99, 99, 97, 97, 98, 97, 99, 98, 95]))
Вывод:
The intervals are not irregular.
The intervals are irregular.
Если вы просто хотите извлечь значения, которые находятся в этом диапазоне, то вы должны сделать это:
average = intervals.mean()
regular_intervals = intervals[(intervals < average * 1.2) & (intervals > average * 0.8)]