【发布时间】:2021-01-17 00:23:09
【问题描述】:
所以,我已经在这上面坐了很长时间(并且拉扯我的头发),并且非常感谢这里的一些帮助。我在这样的数据框中有一些聚合数据,
CLASS_ID,ACH_MONTH(MM format),ACH_YEAR(YYYY format),FEES,PAY_TYPE
862424,06,2020,1000,Month
862425,04,2020,10000,Quarter
862426,02,2020,60000,Bi-Annual
(a). 我想要做的是将一条记录分成 3 条,只要 PAY_TYPE 是 Quarter,基于以下逻辑,
(i)。将费用除以季度中的月数,即 3。
(ii)。将结果作为新值 FEES 应用于所有 3 条拆分记录,ACH_MONTH 是每条记录所在季度的单独月份。
例如,
考虑第二条记录,
这里,ACH_MONTH 是 04,表示 2 季度出现的四月。
现在将 FEES 的值除以 3,即 10000/3 = 3333.33。
现在将记录拆分为 3,每个值 ACH_MONTH 表示 Quarter2 的每个相应月份,如下所示,
862425,04,2020,3333.33,Quarter
862425,05,2020,3333.33,Quarter
862425,06,2020,3333.33,Quarter
(b). 同样,每当PAY_TYPE 是Bi-Annual 时,我必须将记录分成 6 个,每条记录的值都是 FEES,分别为 60000/6 = 10000 和 ACH_MONTH那个双年度的几个月。
例如,
考虑第三条记录,
这里,ACH_MONTH 是 02 表示 2 月,即今年上半年。
现在将FEES 的值除以 6,即 60000/6 = 10000。
现在将记录拆分为 6,每个值 ACH_MONTH 表示今年上半年的每个相应月份,如下所示,
862426,01,2020,10000,Bi-Annual
862426,02,2020,10000,Bi-Annual
862426,03,2020,10000,Bi-Annual
862426,04,2020,10000,Bi-Annual
862426,05,2020,10000,Bi-Annual
862426,06,2020,10000,Bi-Annual
基于上述输入数据帧的最终预期输出,
CLASS_ID,ACH_MONTH,ACH_YEAR,FEES,PAY_TYPE
862424,06,2020,1000,Month
862425,04,2020,3333.33,Quarter
862425,05,2020,3333.33,Quarter
862425,06,2020,3333.33,Quarter
862426,01,2020,10000,Bi-Annual
862426,02,2020,10000,Bi-Annual
862426,03,2020,10000,Bi-Annual
862426,04,2020,10000,Bi-Annual
862426,05,2020,10000,Bi-Annual
862426,06,2020,10000,Bi-Annual
季度参考,
January(01), February(02), March(03) -- (Q1)
April(04), May(05), June(06) -- (Q2)
July(07), August(08), September(09) -- (Q3)
October(10), November(11), December(12) -- (Q4)
双年度参考,
January(01), February(02), March(03), April(04), May(05), June(06) -- (H1)
July(07), August(08), September(09), October(10), November(11), December(12) -- (H2)
我们将不胜感激任何和所有的帮助。提前致谢。
【问题讨论】:
标签: python pandas python-2.7