我有一個數據框,我使用read_csv()
導入,其中兩列是日期('StartDate'和'EndDate'),日期格式爲dd/mm/yyyy。另一列包含可能的每日價格('價格')。Python /熊貓:使用日期差異的列值的加權平均值
的(很小)提取物看起來像:
DateStart DateEnd Price
01/01/2015 31/01/2015 100
01/01/2015 02/01/2015 10
我需要計算每日平均價格,即是在這裏:(31*100+2*10)/(31+2)
,使用天作爲權數。
如何獲取開始日期和結束日期之間的天數?據我所知,這種格式化的dd/mm/yyyy不會被識別爲日期嗎?
一旦我有這段天數的區間,如何計算加權平均值?
什麼是不工作? – YOBA
謝謝你的回答。您的解決方案几乎可行,但不完全。事實上,通過計算'((df.DateEnd - df.DateStart + datetime.timedelta(1))* df.Price)',可能會出現某種溢出,其結果在這裏有好幾天。例如,如果170天和價格是619,我得到105230結果,這是好的,但如果價格是640,我得到-104024!應該更改某些內容以指定Days * Price無單位。可能嗎? – Elsalex
因此,我可以得到一些積極的價格的負平均值。 – Elsalex