【发布时间】:2019-03-10 08:54:04
【问题描述】:
我有一系列类似这张表的交易:
ID Customer Date Amount
1 A 6/12/2018 33,223.00
2 A 9/20/2018 635.00
3 B 8/3/2018 8,643.00
4 B 8/30/2018 1,231.00
5 C 5/29/2018 7,522.00
但是我需要获得过去六个月(截至今天)的平均金额
我正在使用
df.groupby('Customer').resample('W')['Amount'].sum()
得到这样的东西:
CustomerCode PayDate
A 2018-05-21 268
2018-05-28 0.00
2018-06-11 0.00
2018-06-18 472,657
2018-06-25 0.00
但是,使用此解决方案,我只能获得客户有金额的日期范围。我需要为每个客户延长周数,以便我可以获得六个月的整个范围(以周为单位)。在此示例中,我需要从“2018-04-05”这一周(从今天起正好是六个月前)到今天这一周(当然填充 0,因为没有金额)为客户 A /p>
【问题讨论】:
-
我真的不明白你输出中的任何数字来自哪里
-
@user3483203 抱歉,但出于隐私考虑,我手动编写了它们,因此它们可能没有多大意义。但无论如何我都可以创建虚拟数据并提供它。
标签: python pandas date indexing