首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将一次性购买转化为每月累计购买金额

将一次性购买转化为每月累计购买金额
EN

Stack Overflow用户
提问于 2021-09-09 09:07:53
回答 1查看 30关注 0票数 1

我的数据集如下所示。它包含某个数据的邮政编码内的购买记录。我想创建一个新的数据帧,并将每个邮政编码中每个月的购买数量相加。问题是,有时有几个月没有任何活动。

代码语言:javascript
复制
ID     Zipcode     Date          Purchase      
1        9999     2018-12-24        1
2        9999     2018-12-26        1
3        9999     2019-3-14         1
4        9999     2019-4-8          1
5        2400     2018-12-12        1
6        2400     2018-12-14        1
7        2400     2019-1-15         1
8        2400     2019-2-30         1

理想情况下,数据帧应如下所示:

代码语言:javascript
复制
Zipcode    Period          Cumulative purchases
9999      December 2018            2
9999      January 2019             2
9999      February 2019            2
9999      March 2019               2
9999      April 2019               3
9999      May 2019                 3
2400      December 2018            2
2400      January 2019             3
2400      February 2019            4
2400      March 2019               4
2400      April 2019               4
etc
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-09 09:16:33

您可以使用resample按月按sum聚合每个ZipCode,然后按一级聚合,此处为Zipcode按累计和聚合:

代码语言:javascript
复制
df['Date'] = pd.to_datetime(df['Date'])

df = (df.set_index('Date')
        .groupby('Zipcode', sort=False)
        .resample('MS')['Purchase'].sum()
        .groupby(level=0)
        .cumsum()
        .reset_index(name='Cumulative purchases'))

df['Date'] = df['Date'].dt.strftime('%B %Y')
print (df)
   Zipcode           Date  Cumulative purchases
0     9999  December 2018                     2
1     9999   January 2019                     2
2     9999  February 2019                     2
3     9999     March 2019                     3
4     9999     April 2019                     4
5     2400  December 2018                     2
6     2400   January 2019                     3
7     2400  February 2019                     4
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69115319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档