我想用熊貓做SUMIFS風格的計算。 Power Pivots DAX具有CALCULATE功能,可以很好地工作,但不會擴展到數百萬行。熊貓SUMIFS,行相關的過濾器
作爲簡單的例子是使用數據幀來計算累積總計列:
Index Customer Spend Date Cumulative Total
0 A 100 16/08/2017 280
1 A 50 15/08/2017 180
2 B 30 15/08/2017 165
3 A 50 14/08/2017 130
4 B 75 14/08/2017 135
5 C 60 14/08/2017 80
6 A 80 13/08/2017 80
7 B 60 13/08/2017 60
8 C 20 12/08/2017 20
伊夫嘗試了的行應用一個函數但是它很慢,DF將是數據幀以上:
def cumulativeSpend(row):
returnvalue = df['Spend'][
(df['Customer']==row['Customer'])
& (df['Date'] <= row['Date'])
].sum()
return returnvalue
這些行是無序的,可能有使用groupby的方法,但如果有的話我還沒有想出如何調整它,所以日期是< =每一行。
提前非常感謝
打我一分!儘管相同的基本方法。 – asongtoruin