我有一份每日级别数据列表,我已将这些数据汇总到每个唯一公司/组分组的季度级别。然后我计算出同比增长。
但是,对于本季度,我希望将年度同比计算调整为仅计入季度至今期间。例如,假设截至2016年11月4日的数据是最新的,并且该季度从2016年10月1日开始到2016年12月31日结束,我想计算10/1 / 2016-11 / 4之间交易的增长/ 2016年和10/1 / 2015-11 / 4/2015。
假设从2016年11月4日起数据是最新数据,我如何计算最近一个季度的年增长率,我只有部分数据?
每日数据: df =
Company Group Period Date Value
A X 2014Q1 02/21/2015 3
A X 2014Q1 03/04/2015 4
A X 2014Q1 03/16/2015 2
A X 2014Q2 04/21/2015 1
A X 2014Q2 05/04/2015 2
A X 2014Q2 05/16/2015 3
A X 2014Q3 08/03/2015 1
A X 2014Q3 08/14/2015 2
A X 2014Q4 10/16/2015 4
A X 2014Q4 11/03/2015 2
A X 2014Q4 12/14/2015 3
A X 2015Q1 02/21/2015 2
A X 2015Q1 03/04/2015 2
A X 2015Q1 03/16/2015 1
A X 2015Q2 04/21/2015 3
A X 2015Q2 05/04/2015 2
A X 2015Q2 05/16/2015 3
A X 2015Q3 08/03/2015 4
A X 2015Q3 08/14/2015 2
A X 2015Q4 10/16/2015 1
A X 2015Q4 11/03/2015 1
A X 2015Q4 12/14/2015 2
A X 2016Q1 02/21/2016 3
A X 2016Q1 03/04/2016 2
A X 2016Q1 03/16/2016 2
A X 2016Q2 04/21/2016 3
A X 2016Q2 05/04/2016 1
A X 2016Q2 05/16/2016 2
A X 2016Q3 08/03/2016 5
A X 2016Q3 08/14/2016 4
A X 2016Q4 10/16/2016 3
A XX 2015Q1 02/21/2015 2
A XX 2015Q1 03/04/2015 1
A XX 2015Q1 03/16/2015 1
A XX 2015Q2 04/21/2015 3
A XX 2015Q2 05/04/2015 2
A XX 2015Q2 05/16/2015 1
A XX 2015Q3 08/03/2015 4
A XX 2015Q3 08/14/2015 2
A XX 2015Q4 10/16/2015 5
A XX 2015Q4 11/03/2015 1
A XX 2015Q4 12/14/2015 2
A XX 2016Q1 02/21/2016 5
A XX 2016Q1 03/04/2016 2
A XX 2016Q1 03/16/2016 2
A XX 2016Q2 04/21/2016 1
A XX 2016Q2 05/04/2016 1
A XX 2016Q2 05/16/2016 2
A XX 2016Q3 08/03/2016 2
A XX 2016Q3 08/14/2016 3
A XX 2016Q4 10/13/2016 1
A XX 2016Q4 10/18/2016 1
季度数据:df2 =
Company Group Period EndDate Value Pct_Growth_YoY
A X 2014Q1 3/31/2015 9 NaN
A X 2014Q2 6/30/2015 6 NaN
A X 2014Q3 9/30/2015 3 NaN
A X 2014Q4 12/31/2015 9 NaN
A X 2015Q1 3/31/2015 5 -0.44
A X 2015Q2 6/30/2015 8 0.33
A X 2015Q3 9/30/2015 6 1.0
A X 2015Q4 12/31/2015 4 -0.55
A X 2016Q1 3/31/2016 7 0.40
A X 2016Q2 6/30/2016 6 -0.25
A X 2016Q3 9/30/2016 9 0.50
A X 2016Q4 12/31/2016 3 -0.25
A XX 2015Q1 3/31/2015 4 NaN
A XX 2015Q2 6/30/2015 6 NaN
A XX 2015Q3 9/30/2015 6 NaN
A XX 2015Q4 12/31/2015 8 NaN
A XX 2016Q1 3/31/2016 9 1.25
A XX 2016Q2 6/30/2016 4 -0.33
A XX 2016Q3 9/30/2016 5 -0.16
A XX 2016Q4 12/31/2016 2 -0.75
我想计算每个独特公司/集团组合的季度与年度同比增长,而不是将部分2016Q4与2015Q4全部进行比较。
我想要的结果是:
结果=
Company Group Period EndDate Value Pct_Growth_YoY
A X 2014Q1 3/31/2015 9 NaN
A X 2014Q2 6/30/2015 6 NaN
A X 2014Q3 9/30/2015 3 NaN
A X 2014Q4 12/31/2015 9 NaN
A X 2015Q1 3/31/2015 5 -0.44
A X 2015Q2 6/30/2015 8 0.33
A X 2015Q3 9/30/2015 6 1.0
A X 2015Q4 12/31/2015 4 -0.55
A X 2016Q1 3/31/2016 7 0.40
A X 2016Q2 6/30/2016 6 -0.25
A X 2016Q3 9/30/2016 9 0.50
A X 2016Q4 12/31/2016 3 0.50
A XX 2015Q1 3/31/2015 4 NaN
A XX 2015Q2 6/30/2015 6 NaN
A XX 2015Q3 9/30/2015 6 NaN
A XX 2015Q4 12/31/2015 8 NaN
A XX 2016Q1 3/31/2016 9 1.25
A XX 2016Q2 6/30/2016 4 -0.33
A XX 2016Q3 9/30/2016 5 -0.16
A XX 2016Q4 12/31/2016 2 -0.66
答案 0 :(得分:0)
在运行password_hash()
聚合后,请考虑更新选择的行。选择的行将是每个 Company 和 Group 分组中的max Period 。计算过滤掉一年前的今天某个时间点之后发生的日期。
但是,首先,将您的groupby
转换为Date
类型。以下内容将保留以下范围内的行:datetime
。
1/1/2015 - 11/5/2015, 1/1/2016 - today