У меня есть кадр данных pandas, где каждая строка является подпоследовательностью.Я хочу сделать следующее:
- Сгруппировать данные по 'SN', затем упорядочить каждую группу по 'дате'.
- Создать дополнительный столбец с именем 'steps', который является перечислениемстрок в каждой группе от 0 до n (0: n) на основе этого УСЛОВИЯ: внутри каждой упорядоченной группы начинайте перечисление с 0 до тех пор, пока «событие» не станет равным 1, повторите это в каждой группе.ВСЕГДА перезапускайте перечисление каждый раз, когда меняется «SN».Пожалуйста, ознакомьтесь с кодом и примерами изображений для большей ясности ... Заранее спасибо, ребята!
Приведенный ниже код создает исходные данные
data = {'date':['1/1/18', '1/2/18', '1/3/18', '1/1/18', '1/2/18', '2/2/18', 2/3/18', '2/4/18', '2/4/18', '2/4/18', '2/5/18'],
'SN': ['111', '111', '111', '222', '222','222', '333', '333', '333', '444', '444'],
'feat1': [1,2,3,4,5,6,7,8,9,10,11],
'event':[0,0,1,0,1,0,0,1,0,0,1]}
orig_data = pd.DataFrame(data)
orig_data: 
Требуется следующий выход:
