【京东店铺】电商店铺销量分析——店铺列表返回商品||所有店铺商品列表(2)

13 篇文章 0 订阅
7 篇文章 0 订阅

一、优化策略对比分析

为提高生存几率,基于以上分析中小店铺可以考虑从增加曝光和提升点击-下单转化率两个方面入手,前者需要追加曝光成本,或由电商平台干预和优化,后者则需要进一步分析用户行为

作为电商平台,为维持平台电商生态的平衡,基于以上分析可以适当对中小店铺进行一定的流量扶持,如在成单页面多增加中小店铺的曝光度,这里采用三种不同策略,进一步分析平台策略的效果

京东获得店铺的所有商品 API 返回值说明
item_search_shop-获得店铺的所有商品  

(1)曝光量对比

data_a = data[data['组'] == 'A']
data_b = data[data['组'] == 'B']
data_c = data[data['组'] == 'C']
data_aagg = data_a.groupby(['店铺类型','riqi']).agg(['mean','sum'])
data_aagg.reset_index(inplace=True)
data_bagg = data_b.groupby(['店铺类型','riqi']).agg(['mean','sum'])
data_bagg.reset_index(inplace=True)
data_cagg = data_c.groupby(['店铺类型','riqi']).agg(['mean','sum'])
data_cagg.reset_index(inplace=True)
data_aagg_A = data_aagg[data_aagg['店铺类型']=='A'][['riqi','曝光量']]
data_aagg_A = data_aagg_A.rename(columns={'曝光量':'A曝光量A'})
data_aagg_C = data_aagg[data_aagg['店铺类型']=='C'][['riqi','曝光量']]
data_aagg_C = data_aagg_C.rename(columns={'曝光量':'A曝光量C'})
data_aagg_bg = pd.merge(data_aagg_A,data_aagg_C,left_on=data_aagg_A['riqi'],right_on=data_aagg_C['riqi'])
data_bagg_A = data_bagg[data_bagg['店铺类型']=='A'][['riqi','曝光量']]
data_bagg_A = data_bagg_A.rename(columns={'曝光量':'B曝光量A'})
data_bagg_C = data_bagg[data_bagg['店铺类型']=='C'][['riqi','曝光量']]
data_bagg_C = data_bagg_C.rename(columns={'曝光量':'B曝光量C'})
data_bagg_bg = pd.merge(data_bagg_A,data_bagg_C,left_on=data_bagg_A['riqi'],right_on=data_bagg_C['riqi'])
data_cagg_A = data_cagg[data_cagg['店铺类型']=='A'][['riqi','曝光量']]
data_cagg_A = data_cagg_A.rename(columns={'曝光量':'C曝光量A'})
data_cagg_C = data_cagg[data_cagg['店铺类型']=='C'][['riqi','曝光量']]
data_cagg_C = data_cagg_C.rename(columns={'曝光量':'C曝光量C'})
data_cagg_bg = pd.merge(data_cagg_A,data_cagg_C,left_on=data_cagg_A['riqi'],right_on=data_cagg_C['riqi'])
fig = plt.figure(figsize=(20,5))
ax1 = fig.add_subplot(121)
ax1.plot(data_dagg_bg['key_0'],data_dagg_bg['曝光量A']['mean'],label='曝光量A均值')
ax1.plot(data_aagg_bg['key_0'],data_aagg_bg['A曝光量A']['mean'],label='A曝光量A均值')
ax1.plot(data_bagg_bg['key_0'],data_bagg_bg['B曝光量A']['mean'],label='B曝光量A均值')
ax1.plot(data_cagg_bg['key_0'],data_cagg_bg['C曝光量A']['mean'],label='C曝光量A均值')
ax1.legend()
ax2 = fig.add_subplot(122)
ax2.plot(data_dagg_bg['key_0'],data_dagg_bg['曝光量C']['mean'],label='曝光量C均值')
ax2.plot(data_aagg_bg['key_0'],data_aagg_bg['A曝光量C']['mean'],label='A曝光量C均值')
ax2.plot(data_bagg_bg['key_0'],data_bagg_bg['B曝光量C']['mean'],label='B曝光量C均值')
ax2.plot(data_cagg_bg['key_0'],data_cagg_bg['C曝光量C']['mean'],label='C曝光量C均值')
ax2.legend()
plt.show()

读图:对比来看A、C两个策略使得A、C类店铺的曝光量均下降明显,B策略对A类店铺曝光量影响不大,对C类店铺的曝光量提升作用明显

解图:仅有B策略对店铺曝光量的影响符合预期,A、C策略效果不好,同时考虑下单量变化情况确定是否应该予以舍弃

(2)下单量对比

data_aagg_A = data_aagg[data_aagg['店铺类型']=='A'][['riqi','下单量']]
data_aagg_A = data_aagg_A.rename(columns={'下单量':'A下单量A'})
data_aagg_C = data_aagg[data_aagg['店铺类型']=='C'][['riqi','下单量']]
data_aagg_C = data_aagg_C.rename(columns={'下单量':'A下单量C'})
data_aagg_xd = pd.merge(data_aagg_A,data_aagg_C,left_on=data_aagg_A['riqi'],right_on=data_aagg_C['riqi'])
data_bagg_A = data_bagg[data_bagg['店铺类型']=='A'][['riqi','下单量']]
data_bagg_A = data_bagg_A.rename(columns={'下单量':'B下单量A'})
data_bagg_C = data_bagg[data_bagg['店铺类型']=='C'][['riqi','下单量']]
data_bagg_C = data_bagg_C.rename(columns={'下单量':'B下单量C'})
data_bagg_xd = pd.merge(data_bagg_A,data_bagg_C,left_on=data_bagg_A['riqi'],right_on=data_bagg_C['riqi'])
data_cagg_A = data_cagg[data_cagg['店铺类型']=='A'][['riqi','下单量']]
data_cagg_A = data_cagg_A.rename(columns={'下单量':'C下单量A'})
data_cagg_C = data_cagg[data_cagg['店铺类型']=='C'][['riqi','下单量']]
data_cagg_C = data_cagg_C.rename(columns={'下单量':'C下单量C'})
data_cagg_xd = pd.merge(data_cagg_A,data_cagg_C,left_on=data_cagg_A['riqi'],right_on=data_cagg_C['riqi'])
fig = plt.figure(figsize=(20,5))
ax1 = fig.add_subplot(121)
ax1.plot(data_dagg_xd['key_0'],data_dagg_xd['下单量A']['mean'],label='下单量A均值')
ax1.plot(data_aagg_xd['key_0'],data_aagg_xd['A下单量A']['mean'],label='A下单量A均值')
ax1.plot(data_bagg_xd['key_0'],data_bagg_xd['B下单量A']['mean'],label='B下单量A均值')
ax1.plot(data_cagg_xd['key_0'],data_cagg_xd['C下单量A']['mean'],label='C下单量A均值')
ax1.legend()
ax2 = fig.add_subplot(122)
ax2.plot(data_dagg_xd['key_0'],data_dagg_xd['下单量C']['mean'],label='下单量C均值')
ax2.plot(data_aagg_xd['key_0'],data_aagg_xd['A下单量C']['mean'],label='A下单量C均值')
ax2.plot(data_bagg_xd['key_0'],data_bagg_xd['B下单量C']['mean'],label='B下单量C均值')
ax2.plot(data_cagg_xd['key_0'],data_cagg_xd['C下单量C']['mean'],label='C下单量C均值')
ax2.legend()
plt.show()

读图:对比来看A、C两个策略使得A、C类店铺的曝光量下降进而伴随下单量下降,B策略使得A类店铺下单量略微下降,对C类店铺的下单量提升作用明显,提升近3倍左右

解图:仅有B策略对店铺下单量的影响符合预期,A、C策略应予以舍弃

(3)对比分析结论

从策略A、B、C三组的实验结果来看,只有B策略平台店铺的曝光量和下单量的影响符合优化的预期,在对A类店铺影响不大的前提下,对C类店铺的下单量产生了明显的积极作用,可以考虑采用B策略适当慢慢扩样到全量用户。

二、A/B测试

(1)实验目的

    通过提升中小店铺的曝光量来提升平台中小店铺的销量,这里用下单量作为指示指标,提升目标为平均销量的30%才会有显著效果,同时还要确保对大店铺销量下降影响不明显,这里确定为2个标准差以内。实验重点测试B策略是否达到优化目标。

(2)假设检验

1、两个正态总体均值检验

    a、方差已知情况

  b、方差未知,假设方差相等情况

2、两个正态总体方差检验

(3)计算样本容量

k = 1 
alpha = 0.05
beta = 0.2
z_alpha = stats.norm.ppf(1-alpha/2)
z_beta = stats.norm.ppf(1-beta)
sigema_C = data[(data['组']=='D')&(data['店铺类型']=='C')]['下单量'].std()
mu_delta_C = data[(data['组']=='D')&(data['店铺类型']=='C')]['下单量'].mean()*0.3
N2 = (1+1/k)*np.power(sigema_C*(z_alpha+z_beta)/(mu_delta_C),2)
print(N2)


3382.83565731299
k = 1 
alpha = 0.05
beta = 0.2
z_alpha = stats.norm.ppf(1-alpha/2)
z_beta = stats.norm.ppf(1-beta)
sigema_A = data[(data['组']=='D')&(data['店铺类型']=='A')]['下单量'].std()
mu_delta_A = data[(data['组']=='D')&(data['店铺类型']=='A')][['riqi','下单量']].groupby('riqi')['下单量'].mean().std()*2
N1 = (1+1/k)*np.power(sigema_A*(z_alpha+z_beta)/(mu_delta_A),2)
print(N1)


1483.2102112429511

基于以上计算一类指标即即A类店铺下单量降低不超过2个标准差最低样本量应达到1484个,二类指标即C类店铺下单量提升达到0.3个均值最低样本量应达到3383个,因此本次A/B测试样本量应达到3383个

(4) 假设检验 

#随机挑选一天(2020-05-15)作为实验样本
data_t = data[data['riqi']=='2020-05-15']
data_t.groupby(['组','店铺类型'])['下单量'].count()
# C组的样本容量未达标,予以剔除
data_t = data_t[data_t['组']!='C']
data_t

1、一类指标检验,即A类店铺下单量降低不超过2个标准差(左侧检验)

x_delta_DA = data_t[(data_t['组']=='D')&(data_t['店铺类型']=='A')]['下单量'].mean()-data_t[(data_t['组']=='A')&(data_t['店铺类型']=='A')]['下单量'].mean()
sigema_delta2_DA = data_t[(data_t['组']=='D')&(data_t['店铺类型']=='A')]['下单量'].var()/data_t[(data_t['组']=='D')&(data_t['店铺类型']=='A')]['下单量'].count()+data_t[(data_t['组']=='A')&(data_t['店铺类型']=='A')]['下单量'].var()/data_t[(data_t['组']=='A')&(data_t['店铺类型']=='A')]['下单量'].count()
zA_DA = (x_delta_DA - mu_delta_A)/np.sqrt(sigema_delta2_DA)
zA_DA


25.792147493437405

zA_DA > -3.27(p值小于等于0.05%) 接受原假设,即A策略A类店铺下单量下降超过2个标准差,不符合优化要求

x_delta_DB = data_t[(data_t['组']=='D')&(data_t['店铺类型']=='A')]['下单量'].mean()-data_t[(data_t['组']=='B')&(data_t['店铺类型']=='A')]['下单量'].mean()
sigema_delta2_DB = data_t[(data_t['组']=='D')&(data_t['店铺类型']=='A')]['下单量'].var()/data_t[(data_t['组']=='D')&(data_t['店铺类型']=='A')]['下单量'].count()+data_t[(data_t['组']=='B')&(data_t['店铺类型']=='A')]['下单量'].var()/data_t[(data_t['组']=='B')&(data_t['店铺类型']=='A')]['下单量'].count()
zA_DB = (x_delta_DB - mu_delta_A)/np.sqrt(sigema_delta2_DB)
zA_DB


-7.270533375958705

zA_DB < -3.27(p值小于等于0.05%) 拒绝原假设,即B策略A类店铺下单量下降小于2个标准差,符合优化要求

小结:A策略不满足A类店铺下单量降低不超过2个标准差要求,B策略满足

2、二类指标检验,即C类店铺下单量提升超过0.3倍(右侧检验)

x_delta_AD = data_t[(data_t['组']=='A')&(data_t['店铺类型']=='C')]['下单量'].mean()-data_t[(data_t['组']=='D')&(data_t['店铺类型']=='C')]['下单量'].mean()
sigema_delta2_AD = data_t[(data_t['组']=='A')&(data_t['店铺类型']=='C')]['下单量'].var()/data_t[(data_t['组']=='A')&(data_t['店铺类型']=='C')]['下单量'].count()+data_t[(data_t['组']=='D')&(data_t['店铺类型']=='C')]['下单量'].var()/data_t[(data_t['组']=='D')&(data_t['店铺类型']=='C')]['下单量'].count()
zC_AD = (x_delta_AD - mu_delta_C)/np.sqrt(sigema_delta2_AD)
zC_AD


-29.714703931987845

zC_AD < 3.27 (p值小于等于0.05%) 接受原假设,即A策略C类店铺下单量提升小于0.3个均值,不符合优化要求

x_delta_BD = data_t[(data_t['组']=='B')&(data_t['店铺类型']=='C')]['下单量'].mean()-data_t[(data_t['组']=='D')&(data_t['店铺类型']=='C')]['下单量'].mean()
sigema_delta2_BD = data_t[(data_t['组']=='B')&(data_t['店铺类型']=='C')]['下单量'].var()/data_t[(data_t['组']=='B')&(data_t['店铺类型']=='C')]['下单量'].count()+data_t[(data_t['组']=='D')&(data_t['店铺类型']=='C')]['下单量'].var()/data_t[(data_t['组']=='D')&(data_t['店铺类型']=='C')]['下单量'].count()
zC_BD = (x_delta_BD - mu_delta_C)/np.sqrt(sigema_delta2_BD)
zC_BD


24.851504040320673

zC_BD > 3.27 (p值小于等于0.05%) 拒绝原假设,即B策略C类店铺下单量提升大于0.3个均值,符合优化要求

小结:A策略不满足C类店铺下单量提升超过0.3倍,B策略满足,综合来看,B策略满足一类和二类两个指标,可以继续扩样B策略。

三、分析结论
平台应该考虑优化店铺曝光页面以提升曝光-点击转化率
通过B策略可以在对A类店铺销量影响不大的情况下显著提升中小店铺订单量
中小店铺应进一步查找自身与大店铺在点击详情页的差距,提升点击-下单转化率

四、总结思考
电商业务分析需要先厘清业务的逻辑,在明确问题之后要先确定好分析所需要的指标,指标有遗漏会使得问题分析和策略制定存在盲区,如本次研究中对于中小店铺的点击-下单转化率低的问题就难以定位具体原因。

A/B测试是对比分析过程中的重要检验手段,明确好指标、指标间的关系、原假设和备择假设以及检验的方法才能在分析过程中思路清晰,问题解决和策略提出才能更加科学有效,尤其是单侧检验逻辑,思路不清晰极容易判断错误。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值