我正在嘗試做一個多年的財務預測。我需要根據當年的排名來計算支出,然後重新排名並計算下一年的支出。按熊貓排名求和值
我的數據框有汽車零件和修理費用(用一個約束預算代替它)(400美元)一旦這個預算花費了,那麼我不能再修復那年的其他任何東西,但它將被重新設置爲下一年。
在第一年,預算只涵蓋傳輸,但在第二年的傳輸是好的,所以它排在最低。我如何根據等級直到預算限額來運行累計和?
df
Part Rank(Year 1) Cost(Y1) Spend(Y1) Rank(Y2) Spend(Y2)
Transmission 1 400 400 4 0
Tires 2 400 0 1 400
Windshield 3 100 0 2 0
Wipers 4 20 0 3 0
而且要添加:
for val in df['Spend']:
if val.cumsum() >= budget_var:
val = 0
這是怎麼回事,但現在我需要的總和是在排名順序。
請問我有我每次計算額外一年的時間,使一個新的數據幀? – EEPBAH
您可以對數據幀進行分片並對其進行排序,但這會更復雜,除非數據幀非常大,否則不會有太多好處。因此,例如: – Acccumulation
sorting_df = df.loc [:,'Rank']。sort_values() df ['Spend'] [sorting_df.index] = max(0,df ['Cost'] – Acccumulation