Я пытаюсь найти число последовательных нулей, которые входят в группу столбцов demandQuantity, по клиенту и материалу и отставание на 6 месяцев (каждая строка представляет месяц) в отдельном столбце.Поэтому я использую следующий код
def myfunc(rolling_window) :
count=0
n=len(rolling_window)
if rolling_window[-1]!=0:
return 0
else:
for i in range(0,n):
if rolling_window[n-i-1] == 0:
count=count + 1
else:
break
return count
df2['zerocum']=df2.groupby(['customerParentID','forecastGroup'])['demandQuantity'].shift(6).rolling(window=36,min_periods=1).apply(myfunc)
, однако это не работает так, как я ожидаю;Вывод, который я получаю, совпадает с тем, что я получил бы, если бы использовал следующее
df2['zerocum']=df2.['demandQuantity'].shift(6).rolling(window=36,min_periods=1).apply(myfunc)
Так что кажется, что вывод не группируется по.Я использовал точно такую же логику для определения скользящего среднего значения с задержкой на 6 месяцев, что, похоже, тоже не работает.Буду признателен, если кто-нибудь сможет помочь с этим