隋唐演义

隋唐演义

利用python淘宝行为分析 淘宝商品python数据分析

双十一 0

手机淘宝搜:天降红包55 5月20日开始,每天领红包。
京示搜:天降红包369,5月28日开始

利用python做淘宝,python在淘宝中能做什么,python分析淘宝数据,python淘宝商品爬虫
  • 一. 项目介绍
    • 1.1 分析背景
    • 1.2 数据集介绍
    • 1.3 数据理解
  • 二. 明确问题&搭建分析框架
    • 2.1 提出问题
    • 2.2 分析框架搭建
  • 三. 数据处理
    • 3.1 导入库
    • 3.2 导入数据
    • 3.3 数据清洗
      • 3.3.1 查看数据整体信息
      • 3.3.2 缺失值处理
      • 3.3.3 重复值处理
      • 3.3.4 时间维度拆解,增添新列
      • 3.3.5 去除异常值
  • 四. 流量类指标分析
    • 4.1 流量类绝对指标
    • 4.2 流量类相对指标
  • 五. 用户类指标分析
    • 5.1 用户购买次数
    • 5.2 复购率
    • 5.3 回购率
    • 5.4 留存率
  • 六. 用户行为分析
    • 6.1 用户行为时间分析
    • 6.2 用户行为路径分析
      • 6.2.1 “访问-加购物车-支付购买”漏斗分析
      • 6.2.2 用户行为路径分布
    • 6.3 收藏/加购物车-购买时间间隔分布
  • 七. 用户购买商品分析
      • 7.1 商品大类购买次数分析
      • 7.2 商品购买次数分析
      • 7.3 商品转化率分布
  • 八. 总结

多年以来,电子商务业务发展迅速,逐渐地成为人们生活购物的一部分,移动互联网的普及更是让网上购物变得更加迅速、便捷。淘宝作为国内最大的电商交易平台之一,更是具有巨大的流量优势。淘宝APP给用户提供了搜索、商品分类导航、用户个性化推荐及广告等系统和功能,引导用户高效地了解钟意的商品,促成用户消费。上述系统和功能很好的分发了首页的巨大流量,同时又可以通过收集、分析用户数据,不断调整系统和功能的升级,从而不断地提高用户的消费体验,形成一个良好的循环。此外,淘宝提供的收藏、加入购物车等功能的出现,更是给用户提供了便捷的通道。 本文基于数据集内容特征,通过分析用户在APP的行为路径,了解目前业务的基本形势以及用户的行为习惯,针对可能存在的问题进行更深层次的挖掘和分析,并提出对应的解决策略。

数据集来源于阿里云天池官方数据集: User Beha【【微信】】r Recommendation. 数据集中包含了2017年11月25日至2017年12月3日之间,约一百万随机用户的所有行为 (行为包括点击、购买、加购、收藏),共有1亿多条记录,数据集的每一行表示一条用户行为,由用户ID、商品 ID、商品类目ID、行为类型和时间戳组成,并以逗号分隔。关于数据集中每一列的详细描述如下:

列名称说明
用户ID:user_id整数类型,序列化后的用户id
商品 ID:item_id整数类型,序列化后的商品ID
商品类目ID:category_id整数类型,序列化后的商品所属类目ID
行为类型:behavior字符串,枚举类型,包括(“pv”,“buy”,“cart”,“fav”)
时间戳:timestamp行为发生时的时间戳

以下为行为类型说明

行为类型说明
pv商品详情页pv,等价于点击
buy商品购买
cart将商品加入购物车
fav收藏商品
  1. 数据集只涵盖了9天的用户行为,时间较为短;
  2. 数据集内容只包括了:用户ID、商品 ID、商品类目ID、行为类型和时间戳,有很大的局限性,有分析价值的是行为、商品ID、时间、商品类目ID这四个维度。
  3. 数据集有1亿多条记录,数据量过大,本文只抽取了其中200万条数据作为代表分析,这部分数据中包含了19544名用户的行为记录。为了避免读者对后续数据的理解出现错误,因此先声明:后续文中所表述的数据都是基于这19544名用户在2017年11月25号~2017年12月03号共9天的行为数据,而不是所有的用户行为数据。

根据数据集的数据内容和特征,本次主要针对以下几个方面进行分析:

  1. 分析淘宝APP常见的流量类指标。
  2. 分析淘宝APP常见的用户类指标。
  3. 研究在不同时间尺度下,用户在淘宝APP的行为分布,分析用户行为是否存在一定的时间规律。
  4. 分析用户使用APP的行为路径(点击、收藏、加购物车、购买)。
  5. 分析用户购买的商品中,是否存在热销“爆款”。

数据维度200万×5,各字段数据类型符合要求,筛选后数据集大小76.3M。

查看有多少条记录存在缺失值。

运行代码,结果显示没有缺失值,数据比较完整干净。

查看有多少记录重复。

运行代码,结果显示数据集中没有重复记录,不需要进一步处理。

根据源数据集介绍,可知道数据的日期包含在2017年11月25日至2017年12月3日之间,因此可根据这条规则对数据进行异常处理。

输出结果:(1999009, 7),说明原数据集中包含了不在2017年11月25日~2017年12月3日区间的用户行为记录。现在数据完成了清洗工作,进入数据分析环节。

根据数据集内容,本次分析的流量类绝对指标主要包括以下4项:

  1. 每日pv:当天淘宝APP页面的浏览量或者点击量;
  2. 每日uv:当天进入淘宝APP的用户数量(需要去重);
  3. 每日活跃用户数:在这里定义当天在淘宝APP上产生3次及以上行为数据的用户数量(需要去重);
  4. 每日支付用户数:当天在淘宝APP上产生购买行为(buy)的用户数量(需要去重)。

具体代码如下:

使用matplolib绘制折线图。

每天的点击数量比其他数据高出一个量级,排除pv后,其他数据折线图如下: 流量类绝对指标小结:

  • 1.日pv、日uv、日活跃用户数量和日支付用户数量均呈现了上升趋势,且都在12月2日、3日有了大幅度的提升,日pv提升了33.0%、日uv提升了34.7%、日活跃数量提升了32.0%、日支付用户数量提升了24.0%(数据由后两天均值除以前7天均值得出)。
  • 2.上述指标都在12月2日~ 3日有了大幅度提升,12月2日~ 3日虽然是周末,但是结合上个周末11月25日~ 6日的流量分析,可以排除周末原因;由于12月2日~3日距离双12较近,推测较大可能的原因是双12系列促销活动预热所带来的流量增加。

流量指标可以反映出APP整体的运营情况,而流量的相对指标可以返应出整体更深层次的运营情况,根据上述流量指标,对应的流量相对指标包括以下几项:

  1. 每日人均pv:即人均浏览量,每日pv/每日uv;
  2. 每日活跃用户比例:每日活跃用户数量/每日uv;
  3. 每日支付用户比例:每日支付用户数量/每日uv;
  4. 跳失率:指在统计时间内,只浏览点击一次的用户数量/uv;本文选取的统计时间周期是一天。

具体代码如下:

绘图:

跳失率统计如下: (1) 当统计时间为1天时,即每一天APP的跳失率

每天APP跳失率折线图如下:

流量类相对指标小结:

  1. 人均pv波动较平缓,其平均水平为13.0次,即每一位用户每一天平均浏览了13次页面。
  2. 日活跃用户比例和日支付用户比例稳定在79%和19%左右。
  3. 12月2至3日用户数上升了34.7%,但活跃比例和支付比例分别下降了2.0%和7.9%(数据由后两天均值除以前7天均值得出),说明由于活动吸引而来的用户,支付比例并没有比平时的用户高,促销活动带来的流量转化率拉低了整体的支付转化率,建议在活动引流时要更加精准。
  4. 活动开始前(即前7天),APP每天的跳失率在10.3%左右,用户粘性很高;在活动开始后12月2日~3日,APP每天的跳失率上升至11.0%,比活动前提升了7.0%,也说明了活动引流时的精准度要低于活动前。

1. 用户购买次数(9天内)描述统计

由上,这9天内,在这19544名用户中,一共有13330名用户有购买行为,平均每人购买3次左右,超过一半的用户购买不到3次,绝大大部分用户购买不到5次,整体数据呈现右偏,即用户中存在购买很多次的小部分用户,购买次数最多的达到了72次。

2.用户购买次数分布

绝大部分的用户在这期间购买的次数在10次以内,以下为购买10次以内用户的分布。 随着购买次数的增加,人数也在不断下降,符合消费行为的行业规律;在这9天内,有72.8%的用户购买次数在平均值以下,高频次(>10)消费的用户占比极小,为2.2%,可以认定为极忠诚用户,是需要重点关注的用户。

复购率:指在统计周期内,产生2次及2次以上购买的用户数量占购买用户的总数的比例。 1. 9天的复购率:

2. 每一天的复购率:

复购率小结:

  1. 根据《精益数据分析》一书中给出的参考:当90天内重复购买率达到30%以上时,电商模式处于忠诚度模式,而淘宝APP9天内的复购率就高达66%,因此目前淘宝处于电商的忠诚度模式,应该将经营的重心放在客户的忠诚度上,即鼓励忠诚的回头客更加频繁的消费。
  2. 每一天用户的复购率在30%左右波动,在12月开始时,有小幅度的下降,推测双12活动前夕,用户在抑制消费,在等待更多优惠活动的开展;当然,数据的正常与否还需要通过对比去年相同时间段的数据才能做出判定。

由于数据集涵盖的只有9天的数据,因此本文将这9天时间拆解成3个时间窗口,每一个时间窗口的长度是3天,以此来分析用户的回购率。

回购率小结: 11月25日 ~ 11月27日,即第一个时间窗口的用户回购率为44.5%,第二个时间窗口11月28日 ~ 11月30日,用户的回购率为46.7%, 比第一个时间窗口有小幅度提升,说明用户忠诚度在增加。

留存率是指用户在某段时间内开始使用应用,经过一段时间后,仍然继续使用该应用的用户占当时新增用户的比例。由于数据集只有9天的数据,无法确认用户是否为新增用户。因此本文将在9天内第一次登陆的用户当做新用户,模拟分析淘宝APP的留存率。

本数据集中,用户的行为主要包括了浏览点击(pv)、收藏(fav)、加购物车(cart)和购买支付(buy)。接下来分别以日和小时为单位分析用户购买行为,分析用户在不同时间尺度下的行为规律。

1. 日期维度下,点击、收藏、添加购物车、支付次数的统计

2. 小时维度下,点击、收藏、添加购物车、支付次数的统计

不同时间尺度下用户行为小结:

  1. 从日期角度:收藏次数、加购次数和支付次数和页面浏览次数的上升趋势一致,都在12月2日~3日出现了大幅度的提升,收藏次数提升了34.7%,加购次数提升了38.9%,支付次数提升了19.7%;
  2. 从小时维度上:19点~23点是用户活跃的高峰期,22点 ~ 凌晨4点,用户的活跃程度逐渐下降,直至一天中的最低值;5点 ~ 10点用户活跃程度开始上升;10点 ~ 18点这段时间,是一个相对平稳的状态,因为这段时间大致为工作时间;可以看出来,大部分用户的活跃时间符合人类的生物钟,因此,建议可以参考用户的活跃时间段,对应采取一些促销活动。
  3. 当然如果有条件,可以进一步分析不同时间段活跃的主要用户群特征,再针对主要活跃用户群特征,在不同时间段,主推不同商品。

淘宝APP的收藏功能主要是帮助用户收藏自己喜欢但不立即购买的商品,而购物车既有类似收藏商品的功能,但主要还是方便用户批量购买商品,两者都是用于提升用户购物体验。但是商品收藏之后要购买还是面临着加入购物车和直接购买的选择,因此,本文的漏斗分析会将收藏排除在外,只分析pv―cart―buy的转化,并且本文的转化周期设定为9天。

接着,需要筛选出漏斗里各个环节的用户数量。

计算每一个环节转化率,并绘制漏斗图。

漏斗分析小结:

  1. 本次漏斗分析的统计周期是9天,分析的数据集中原来共有19544名用户,但只有19463名用户有浏览页面行为,剩下的81名用户的浏览行为,推测是数据集时间范围外产生的。因此,统计分析采取了行为赋值的形式,先排除这部分用户。
  2. 通过分析可知,在这9天中,有75%的用户在浏览后,有使用加入购物车的习惯;有71.93%的用户在加入购物车后,会产生购买行为。
  3. 由于数据集时间范围的限制,暂时无法知道这9天各环节的转化率是否正常,需要与历史数据对比才能作出最终的判断。

用户行为路径分布小结:

  1. 本次分析是以用户浏览作为前提的,一共有8条路径。在这9天中,占比最高3条路径分别是:浏览―加购物车―购买、浏览―收藏―加购物车―购买和浏览―加购物车,分别占了32.72%、21.22%、14.36%,总占比68.3%,其他用户路径占比相差不大。
  2. 这9天中,支付购买的用户占比为68.14%,使用购物车功能用户占比75%,使用收藏功能的用户占比40.12%(数据由对应包含行为的路径累加得到)。
  3. 使用收藏功能并且支付购买了的用户占比28.48%,这9天内,收藏功能的支付转化率为71.00%(28.48%/40.12%);没有使用收藏功能的支付转化率为66.23%(39.66%/59.88%),因此收藏功能能一定程度的提高用户的支付转化率,提升率为7.18%。
  4. 使用购物车并且支付购买了的用户占比53.94%,购物车功能的支付转化率为71.92%(53.94%/75%),没有使用购物车功能的用户支付转化率为56.80%(14.20%/25%),同样,购物车也能提高用户的支付转化率,并且提升率高达26.62%。
  5. 综上,使用收藏和支付功能的用户转化率会比不使用这两个功能的用户转化率要高,因此,建议最大限度地优化收藏和加购物车功能,以促进用户更加频繁地使用这两个功能,从而促进整体的支付转化率;此外还可以对在收藏夹和购物车有商品的用户提设置提醒功能,如:商品加入购物车3天后还没购买,可以及时提醒用户;或者购物车里的商品有优惠信息了及时提醒用户。

由以上分析可知,这9天内,使用收藏和购物车功能的用户转化率比较高,接下来进一步分析9天内,用户收藏商品和加购物车到购买的时间间隔分布,运营人员可以根据时间间隔分布,给用户设置提醒功能。

收藏/加购物车―购买时间间隔分布小结:

  1. 从上图可以看出,在这9天内,加入购物车且有购买意愿的用户,接近60%的用户会在24h内完成购买,超过87.9%会在3天内购买;收藏且有购物意愿的用户,接近77%的用户会在24h内完成购买,超过92%的用户在3天内购买。
  2. 由上分析可知,当用户收藏和加购物车3天后还未购买,可以大致推测用户的购买意愿并不强烈,此时可以通过适当的提示和活动来引导用户购买,或者推荐对应的相似商品供用户选择。

在这9天的用户行为数据中,一共有6492中商品大类,用户购买了其中的3149种,占比48.5%;一共有近63万种商品,有购买记录的只有3.2万种商品,占比仅为5.1%。接下来分析用户比较喜欢购买的商品大类以及商品。

1. 商品大类购买次数描述统计

在这9天中,平均每一种商品大类被购买了12.8次,但超过50%的商品大类只被购买了3次以内,整体明显呈现右偏,说明存在着一部分相对热销的商品大类提高了平均水平。接下来找出最热销的20种商品大类。 2. 最热销的20种商品大类

在这9天中,热销TOP20的商品大类购买次数占总体商品大类购买次数的20.6%,0.64%的商品大类购买次数占比高达20.6%,这也符合二八定律,因此建议额外关注这TOP20的热销商品大类。

1. 商品购买次数描述统计

在这9天中,平均每一种商品被购买了1.2次,但超过75%的商品只被购买了1次,购买次数最多的商品也只有35次,没有出现购买数量非常集中的商品,说明这9天内,商品售卖主要依靠长尾商品的累积效应,而非爆款商品的带动。 2. 最热销的20种商品

在这9天中,热销TOP20的商品购买次数占总体商品购买次数的0.71%,占比比较低,再次说明了这9天中没有爆款商品的带动。

  1. 如上图,在9天内,商品的转化率分布出现了两个集中区域,有接近67%的商品转化率在50%以下,接近32%的商品转化率在90%以上,但高转化率的商品有97.3%只有1个用户购买了,因此这部分商品目前还不能划分为高转化率商品,因为流量基数过小。建议后续可以关注这部分商品随着流量的增大,转化率的变化情况。
  2. 低转化率的商品购买用户数量规模也不大,但是由于UV大,所以整体呈现较低的转化率,对于这部分商品,建议对应的商家做好流量流失分析,提高用户从点击进入商品详情页再到最终购买的体验,从而促进转化率。

本文分析了淘宝【【淘密令】】名用户在9天内产生的200万条行为记录,根据数据集内容的特征,主要从流量指标、用户类指标、用户行为以及用户购买商品四大方面进行入手分析,以下为本次分析的一些结论和建议。

  1. 在流量类指标中分析发现,虽然双12活动的预热给淘宝APP带来了访客量的大幅上涨&#