我有季度时间序列数据,我正在计算衍生工具。问题是,原始数据在时间序列上存在差距。因此,如果我试图找到一个变量的季度变化百分比,有时候它不会意识到它正在计算一个比四分之一长的时间段的百分比变化。如何确保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