Как подсчитать значения между 2 конкретными значениями в dataframe

#python-3.x #dataframe

#python-3.x #dataframe

Вопрос:

Допустим, существует фрейм данных, как показано ниже :

введите описание изображения здесь

Я хотел бы подсчитать количество «xyz» между каждым «abc» в метке столбца и перенести эту информацию в другой столбец. Вывод будет выглядеть следующим образом :

введите описание изображения здесь

Как мы можем добиться этого с помощью python / pandas?

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

1. Кто-нибудь может здесь помочь!!!

2. Что вы пробовали до сих пор, пожалуйста?

Ответ №1:

 import pandas as pd
df = pd.DataFrame({"label":['abc','xyz','xyz','abc','abc','xyz','xyz','xyz','xyz','abc']})

sign = 'abc'
counter = 0
result = []
flag = 0
for idx, row in df.iterrows():
    if row['label'] == sign and flag==0:
        flag=1
    elif row['label']==sign and flag==1:
        result.extend([counter]   [0] * (counter 1))
        counter = 0
        flag = 0
    else:
        counter =1
        
df['count'] = result