我已經建立了一種財務預測模型。這是非常漫長的,我不確定我會用它來做什麼樣的功能。基本上我需要根據前一年計算本年度的預計支出,然後重新列出清單的優先順序,以便在上一財年購買的東西降到最低。我試圖計算30年。我知道這可以通過一個循環來完成,但是,可用於支出的預算每年都會發生變化。對於熊貓數據框可以調整的迭代函數?
這裏是我試圖達到的數據幀的例子:
Budget_Y1 = 400.00
Budget_Y2 = 300.00
DF1
Part RankY1 CostY1 SpendY1 RankY2 CostY2 SpendY2
Transmission 1 400 400 4 0 0
Tires 2 200 0 1 200 200
Windshield 3 100 0 2 100 100
Wipers 4 20 0 3 20 0
我的數據最終要複雜得多此,涉及數百萬行。
現在我計算每年單獨基於上一年,以便我可以輕鬆地更改每年可用預算,以運行不同的資金情況。
我的問題是有一個函數(或函數的類型),可以計算每年基於上一年與每年不同的預算,所以我不需要手代碼的所有計算?
我在尋找一個發電機做這樣的事情或其他一些功能?基本上它會類似於amoritzation計算器的種類。
現在我用這個代碼,一遍又年過三十出來讓每年的成本,因爲預算每年是不同的:
df1.loc[(df1['RankY2']<4), 'CostY2'] = df1['CostY1']
df1['Spend_Y2']= np.where((df1.Cost_Y2.cumsum(
<=budget_Y2), df1.Cost_Y2 ,0)
...Repeat some other calculations...
...do new priority calculation...
df1 = df1.sort_values('RankY3', ascending = False)
編輯的一個更明顯的例子。
每年的數據結構是什麼? – GiantsLoveDeathMetal
一個簡單的數值例子將有助於帶來更好的可重現代碼 – chrisckwong821
@GiantsLoveDeathMetal我編輯了這個例子,它是一個熊貓數據框。這有幫助嗎? – EEPBAH