chapter3.为什么销售额会减少

 

商业数据分析实战(酒卷隆志/里洋平)

第三章 案例1——柱状图:为什么销售额会减少

3.1现状和预期

本月黑猫游戏的销售额减少

3.2发现问题

作为可能导致销售额减少的原因,上月和本月的不同之处有以下两点。

1)、在商业宣传上存在的问题

2)、每月以不同的主题开展的游戏活动存在的问题

提出假设后,接下来就应该用简单的方法来大致验证一下。通过咨询 市场部和游戏开发部,得到了以下信息。

1)、由于预算的缘故,和上月相比,本月并没有开展那么多的商业宣传活动

2)、游戏活动的内容和上月相比几乎没有变动

3.3数据的收集和加工

探讨分析所需的数据

确定了要分析的主题后,就需要讨论一下分析所需的数据了。

在本例中,我们需要哪些数据呢?

这里我们提出的假设如下所示。

问题

     和上月上比,本月的销售人减少了     (事实)

     本月的商业宣传活动相比上月减少了  (事实)

      因此,新用户的数量也减少了             (假设)

解决方案

       将商业宣传活动恢复到上月相同的水平

3.4数据分析

(1)、加载数据

#加载数据
dau = pd.read_csv("E:/Download/R/section3-dau.csv")
dpu = pd.read_csv("E:/Download/R/section3-dpu.csv")
install = pd.read_csv("E:/Download/R/section3-install.csv")

 (2)、关联日活和用户基本信息

dau_install = pd.merge(dau, install, on=['user_id', 'app_name'])

  (3)、关联消费信息

dau_install_payment = pd.merge(dau_install, dpu, on=['user_id', 'log_date', 'app_name'], how='outer')

 (4)、增加属性来区分新用户与已有用户

#生成月份列
dau_install_payment['install_month'] = dau_install_payment['install_date'].str.slice(0,7)
dau_install_payment['month'] = dau_install_payment['log_date'].str.slice(0,7)

def date_equal(bdate, edate):
    if bdate == edate:
        return "install"
    else:
        return "existing"

#生成tag表示是否为新增用户
dau_install_payment['tag'] = dau_install_payment.apply(lambda row:date_equal(row['month'], row['install_month']) ,axis=1)

 (5)、不同维度组合按月汇总,

dau_install_payment.groupby(by=pd.Grouper(key=('log_d'), freq='M')).sum()['payment']
log_d
2013-06-30    2277230.0
2013-07-31    2070850.0
Freq: M, Name: payment, dtype: float64
dau_install_payment.groupby(by=[pd.Grouper(key=('log_d'), freq='M'),'tag']).sum()['payment']

按月汇总新老用户的

log_d       tag     
2013-06-30  existing    1778860.0
            install      498370.0
2013-07-31  existing    1778860.0
            install      291990.0
Name: payment, dtype: float64
final = dau_install_payment.groupby(by=[pd.Grouper(key=('log_d'), freq='M'),'tag']).sum()['payment'].reset_index()
final.to_csv('E:/Download/R/final.csv', index=False, float_format='%.2f')

 (6)、数据可视化

这里之所以选择用R绘图,是觉得R绘图代码更简单,更新渲染的效果比较好。

用R绘制堆叠条形图

3.5解决对策

3.6小结

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值