我是一名初学者,正在尝试通过以下示例学习pandas。
我有以下两个数据框:
第一个数据框如下:
CCP_DETAILS_SID BASE_LINE
1 1235.89
2 369.32
3 9863.1
第二个是,
CCP_DETAILS_SID PERIOD_SID GROWTH
1 601 0.1
1 602 0.2
1 603 0.3
2 601 0.1
2 602 0.2
2 603 0.3
3 601 0.1
3 602 0.2
3 603 0.3
通过合并以上两个数据,我正在尝试计算一个名为“PROJECTION_SALES”的字段。该字段的公式和示例如下。
Projection_Sales = (Base_Line) * (1+Growth),而两个数据帧之间的合并或连接条件是CCP_DETAILS_SID。
示例:
Projection_Sales(ccp_details_sid=1 and period_sid=601)=1235.89*(1+0.1)
Projection_Sales(ccp_details_sid=1 and period_sid=602)=1235.89*(1+0.1)*(1+0.2)
Projection_Sales(ccp_details_sid=1 and period_sid=603)=1235.89*(1+0.1)*(1+0.2)*(1+0.3)
Projection_Sales(ccp_details_sid=2 and period_sid=601)=369.32*(1+0.1).
同样的计算方法适用于数据框中的其他行。以下是示例输出。
CCP_DETAILS_SID PERIOD_SID PROJECTION_SALES
1 601 1359.479
1 602 1631.3748
1 603 2120.78724
2 601 406.252
2 602 487.5024
2 603 633.75312
3 601 10849.41
3 602 13019.292
3 603 16925.0796
我已经尝试了以下类似的东西
pd.merge(first,second,how='inner',on='CCP_DETAILS_SID')
在这一步之后,我需要使用cumprod来扩展代码。因为您可以观察到上面的示例具有累积乘积逻辑等等。
请问大家能否建议我完成这个计算的方法?