我爱编程

产品经理数据分析不求人(4) - 拼团购数据分析

2018-05-04  本文已影响0人  Jeru_d39e

产品经理数据分析不求人(1) - 第一个Python程序

产品经理数据分析不求人(2) - Pandas处理Excel

产品经理数据分析不求人(3) - 拼团购数据清洗

现在我们接着利用第三篇文章中得到的临时文件进行数据分析尝试得出一些规律,这次只需要二十多行代码就能实现,得到数据结果后还会演示如何以可视化方式进行呈现,包括如何通过地域数据生成类似下面的热力地图:

先把代码全部贴出来再简单解释,这个系列中的第二篇提到过groupby的分组统计功能,group_sum函数中就是用到groupby来对group_count和new_user_count这两个字段分组求和,之后调用append_average_count函数添加两个平均值字段,分组的一系列字段都定义在columns数组里,如果要添加新的分组统计只用修改这一处即可,所以这段代码基本可以拿来就用,就算看不懂也没关系。最后我们生成一个新的excel文件,其中有多个worksheet, 和columns里的字段一一对应。

import pandas as pd

def append_average_count(data_sum, data_grouped):
    data_sum['average_group_count'] = data_sum['group_count'] / data_grouped.size()
    data_sum['average_new_user_count'] = data_sum['new_user_count'] / data_grouped.size()
    data_sum['count'] = data_grouped.size()

def group_sum(df, column):
    column_grouped = df.groupby(column)
    column_sum = column_grouped[['group_count', 'new_user_count']].sum(axis=1)
    append_average_count(column_sum, column_grouped)
    return column_sum

def write_sheet(df, writer, column):
    group_sum(df, column).to_excel(writer, column)

input_file = "d:/dev/groupon_tmp.xlsx"
output_file = "d:/dev/groupon_output.xlsx"

columns = ["gender", "membership", "os", "city", "horoscope", "zodiac", "age_range", "marriage",
                   "is_new", "num_address", "vip_flower", "reg_source", "factory", "active_status", "interval"]

df = pd.read_excel(input_file)
writer = pd.ExcelWriter(output_file)
for index, val in enumerate(columns):
    write_sheet(df, writer, val)
writer.save()

print("statistics processing completed!")

代码执行大约需要一分钟时间,可以喝杯茶再回来看结果。

打开excel文件会看到底部出现一排worksheet

先看看性别分组统计的结果(0女1男): 参与拼团的男女比例约为8:1, 女性用户的人均拉新能力比男性用户高出16%

性别分组

再看看会员等级的影响,会员等级越高人均成团数越高,但是从拉新能力来看却是完全颠倒的结果,这也映证了之前提到的社交价值衰减规律

会员等级分组

从年龄层来看,各组人群的人均成团数量都差不多,但是拉新能力是越年轻的用户越强,其中20岁以内的用户的人均拉新能力比40岁以上用户要高74%

年龄分组

城市和注册时间也是显著的关键因子,限于篇幅分析结果我就不一一解读了,下面来看看数据可视化呈现。选择很多,可以直接用excel生成图表,可以用Power BI, 百度图说,以及类似的各种在线图表生成工具,还可以直接代码实现,用python的matplotlib库也能画出各种炫酷的图表,我这次用的是数据观网站提供的在线服务。

选择通过excel作为数据源,上传代码生成的excel文件

选择worksheet预览,再点击下一步来创建数据

切换到图表tab, 选择图表类型,对于会员等级分组统计用柱状图。横轴选membership, 纵轴选两条,人均成团和人均拉新,显示副轴。

至于文章开头的热力地图,选择city worksheet, 图表类型切换到地图即可,可以自己尝试一下。

到这里基本的数据分析就结束了,能给到我们一些启发,但还远远不够,下一次会讲到如何用机器学习的方式实现更科学与全面的分析,并通过历史预测未来。

上一篇下一篇

猜你喜欢

热点阅读