我有季度時間序列數據,我正在計算衍生工具。問題是,原始數據在時間序列上存在差距。因此,如果我試圖找到一個變量的季度變化百分比,有時候它不會意識到它正在計算一個比四分之一長的時間段的百分比變化。如何確保pct_change()僅在前一個數據點來自上一個季度時纔會完成(而不是後面的數據點)python缺少數據pct_change
與此相關的,我期望計算每年百分比變化,其中將不得不返回4個時期。我可以使用pct_change,只是讓它回顧4個週期而不是1個,但同樣,假設所有數據都存在。
處理這種情況的最佳方法是什麼?
下面是代碼,如果該數據是完美的,我會用:
dataRGQoQ = rawdata.groupby("ticker")['revenueusd'].pct_change()
我已經包含下面的樣本數據。在這些數據中有兩點要重點關注:(1)帶有'A'的股票,'2006-09-30'和'2007-12-31'之間的差距; (2)與ABV之間的差距(這一次稍有不同,因爲它有日期而沒有數據)在'2012年12月31日'和'2013年12月31日'之間。
ticker,calendardate,revenueusd
A,2005-12-31,5139000000
A,2006-03-31,4817000000
A,2006-06-30,4560000000
A,2006-09-30,4325000000
A,2007-12-31,5420000000
A,2008-03-31,5533000000
A,2008-06-30,5669000000
A,2008-09-30,5739000000
AA,2005-12-31,26159000000
AA,2006-03-31,27242000000
AA,2006-06-30,28438000000
AA,2006-09-30,29503000000
AA,2006-12-31,30379000000
AA,2007-03-31,31338000000
AA,2007-06-30,31445000000
AA,2007-09-30,31201000000
AA,2007-12-31,30748000000
ABBV,2012-12-31,18380000000
ABBV,2013-03-31,
ABBV,2013-06-30,
ABBV,2013-09-30,
ABBV,2013-12-31,18790000000
ABBV,2014-03-31,19024000000
ABBV,2014-06-30,19258000000
ABBV,2014-09-30,19619000000
ABBV,2014-12-31,19960000000
ABBV,2015-03-31,20437000000
感謝您的答覆!這有助於它的一部分。它填補了空白空間,儘管當它變成百分比時,ABBV'2012-12-31'百分比變成了-91%。不知道爲什麼會這樣。此外,它沒有解決在「2006-09-30」和「2007-12-31」之間有差距的股票「A」系列的第一個問題。對這兩件事有任何想法? – JohnSmith
你可以刪除'limit = 4'。你的問題是,你想要它做什麼?你想爲這些地區提供'0%'嗎?我會落在離開他們的那一邊'NaN' – piRSquared
是的讓他們成爲NaN – JohnSmith