python подсчитывает, сколько раз значение серии pandas превышало значение X

#python-3.x #pandas

#python-3.x #pandas

Вопрос:

Я вижу, что существуют различные аргументы python / pandas для подсчета количества вхождений.

Однако есть ли способ подсчитать, сколько раз значения серии превышали $ X? Оно не должно учитываться дважды за время, когда значение серии превышает $ X. Оно должно учитываться только тогда, когда оно превышает его.

Например, в приведенном ниже ряду данных я бы ожидал, что количество = 2, а не 4; учитывая X = 200 долларов.

 list_a = [100, 150, 210, 185, 166, 205, 230, 222, 195, 190, 160]
pd.DataFrame(list_a, columns = ['mtm_level'])
  

Комментарии:

1. что здесь X?

2. X составляет 200 долларов. Спасибо, что указали на это.

3. я думаю, что приведенный ниже ответ идеально подходит для вас..

Ответ №1:

Проверьте с помощью cumsum логического ряда where nunique . Здесь «выше» не включает X

 X = 200
df['mtm_level'].le(X).cumsum().where(df['mtm_level'].gt(X)).nunique()
#2

X = 1000
df['mtm_level'].le(X).cumsum().where(df['mtm_level'].gt(X)).nunique()
#0