Używanie cumsum w pandach w grupie ()
Od nowicjusza Pandas: Mam dane, które wyglądają zasadniczo tak:
data1=pd.DataFrame({'Dir':['E','E','W','W','E','W','W','E'], 'Bool':['Y','N','Y','N','Y','N','Y','N'], 'Data':[4,5,6,7,8,9,10,11]}, index=pd.DatetimeIndex(['12/30/2000','12/30/2000','12/30/2000','1/2/2001','1/3/2001','1/3/2001','12/30/2000','12/30/2000']))
data1
Out[1]:
Bool Data Dir
2000-12-30 Y 4 E
2000-12-30 N 5 E
2000-12-30 Y 6 W
2001-01-02 N 7 W
2001-01-03 Y 8 E
2001-01-03 N 9 W
2000-12-30 Y 10 W
2000-12-30 N 11 E
I chcę pogrupować go według wielu poziomów, a następnie zrobić cumsum ():
Np. Jakrunning_sum=data1.groupby(['Bool','Dir']).cumsum()
<- (Nie działa)
z wyjściem, które wyglądałoby mniej więcej tak:
Bool Dir Date running_sum
N E 2000-12-30 16
W 2001-01-02 7
2001-01-03 16
Y E 2000-12-30 4
2001-01-03 12
W 2000-12-30 16
Mój „podobny” kod wyraźnie nie jest nawet zamknięty. Podjąłem wiele prób i nauczyłem się wielu nowych rzeczy o tym, jak tego nie robić.
Dziękujemy za pomoc, jaką możesz udzielić.