pandas练习_同期群分析(Cohort Analysis)

在这里插入图片描述

1. 同期群分析理论回顾

参考 https://www.jianshu.com/p/145a13355fa1
在这里插入图片描述

2. 构造练习数据(Excel)

我们设计一份数据, 2019年期间某店铺的成交订单明细, 包含以下4个字段:
在这里插入图片描述
这里使用Excel中的rand函数, 来构造随机数据, 具体操作略(用户id需要重复)
最终, 获取10万条随机的数据
在这里插入图片描述

3. 数据处理思路

  1. 生成每月新增用户明细
  2. 生成每个月份的用户明细
  3. 将上面生成的数据按用户id关联生成总表
  4. 总表按月份聚合
  5. 调整格式

4. 用pandas实现整个处理过程

  1. 导入相关模块, 并加载数据
    在这里插入图片描述
    date已经是datetime格式了
    在这里插入图片描述

  2. 需要按月份来做同期群分析, 所以新增一列, 这里就简单取该日期的1号
    用到了datetime模块中date类的replace方法
    在这里插入图片描述

  3. 生成每月新增的用户明细
    用pandas中的groupby, 按user_id取dt最小值聚合, 最后加reset_index()是为保留dataframe格式
    在这里插入图片描述

  4. 生成每个月的客户明细(以2019-02为例)
    df.loc切片, datetime.date()构造日期
    在这里插入图片描述

  5. 用merge关联df_00 与 df_1902
    在这里插入图片描述

  6. 最终重复4.5步骤
    在这里插入图片描述

  7. 重复的工作让电脑去做, 定义一个函数, 参数是dataframe
    在这里插入图片描述
    在这里插入图片描述

  8. 通过序号的循环, 生成最终符合格式的数据
    在这里插入图片描述

5. 其他思路与方法

待补充

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值