У меня есть pd.DataFrame, как показано ниже,
Hr Name Count Day
6 1318 10.0 Friday
7 1318 20.0 Friday
8 1318 2.0 Friday
9 1318 18.0 Friday
6 1318 2.0 Monday
7 1318 15.0 Monday
8 1318 2.0 Monday
9 1318 5.0 Monday
6 1319 20.0 Friday
7 1319 30.0 Friday
8 1319 50.0 Friday
9 1319 5.0 Friday
6 1319 3.0 Monday
7 1319 30.0 Monday
8 1319 2.0 Monday
9 1319 5.0 Monday
Я хочу повторить каждое Подсчет и суммировать имя, а затем сделать 1, если значение> = 20. наконец посчитайте значения, сколько раз достигнуто выше> = 20.
Когда сумма Count достигла> = 20, тогда следующее значение должно быть посчитано с фактическим значением.
Ожидаемый ОП:
[{'Friday' :[2,3],'Monday':[1,1]}]
Вот как сделать в пятницу:
1318Friday[10+20=30 30 >=20 so 1, 2+18 =20 again 1, Total is 2]
1319Friday[20 20 >=20 so 1, 30 again 1,50 again 1,5 is !>=20, Total is 3]
Finally {'Friday' : [2,3]}
Код, который я пробовал:
finalresult = [data]
df = pd.DataFrame(finalresult)
df['csum'] = df.groupby(['Day','Name'])['Count'].cumsum()