首页 > 编程知识 正文

电商用户画像,京东用户画像报告

时间:2023-05-03 16:13:14 阅读:148303 作者:1738

一、项目背景由于近期小家电产品订单量、产品参观数、搜索数等指标下降,现计划开展促销活动,活动前想对小家电的用户特点给出一些建议。

数据:有两个表,user_info用户信息,order_d订单信息,从数据库中提取了8月13日~8月19日一周的订单数据。

字段的说明如下。

分析思路

活动必须包括以下部分:

活动参与者-用户基本属性

活动时间-用户购物行为属性

活动产品-用户偏好属性

从这些角度刻画小家电消费群体的用户画像,从用户特征本身为促销活动提供建议和指导。

二、用户基本属性分析性别与小家电用户多为男性,但男女比例差异不大;

用户年龄以45岁以下居多,25-35岁年轻人居多。

分地区家电类客户前五位的省份是广东、江苏、北京、上海和山东,非北京省份是东部沿海省份。

用户最多的是北上广深4个超一线城市,用户多集中在一线城市。

结婚状况为近7成用户已婚,6成以上的用户有孩子的可能性很高

教育程度绝对小的家电用户学历在专业以上,说明这种目的用户的学历水平比较高

许多用户从事互联网、白领、教师等职业。

三、行为属性分析采购商品类别分布从小家电细分订单量来看,电风扇销量遥遥领先,但具有明显的季节周期性,考虑到换季因素,此次活动已于夏季结束,因此,此次活动集中在净水器、饮水机另外,可以利用往年的同期销售数据进行分析,看是否能找到其他合适的产品。

从时间维度分解订单从星期维度来看,星期六和星期二的订单量最多,星期三的订单最少

从时间维度来看,10点、14点、22点3个时间点订单量分布较多

用户促销/评价灵敏度占绝大多数的小家电消费用户对促销很敏感,但只有一小部分对促销活动非常敏感。 这表明面向家电消费者的活动应该确定合适的活动力度,在活动形式上多下功夫。

大多数小家电消费者对产品评论非常敏感。 这说明小家电消费用户非常重视产品的口碑和使用反馈,可以选择促销产品评价高、评论多的产品; 宣传广告可以更多地反映促销商品的口碑。

四.结论小家电消费用户特点:

虽然大多数是一线城市出身的男性,但男女比例并没有很大的不同。 年龄在30左右,已婚怀孕了。 在学历层次较高、互联网、教师等收入相对较高的行业,喜欢在周二和周六早上10点左右和晚上10点左右订购关注产品的活动,以及对口碑较好的产品活动的建议。

文案:采用无性别款式文案,强调产品质量对家庭生活的提升,强调产品口碑产品。 选择口碑好的净水器、饮水机、加湿器等产品时间。 活动应在周二和周六上午9点和下午9点进行推送。 由于该用户和订单数据集只有7天的数据,绘制的用户图像可能存在偏差,以上分析、结论和建议只是基于现有数据,仅供参考。

五.代码importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltimportseabornassns.set _ style (white ),) font ' arimporind

user_df.info (

pt _ gender=user _ df [ ' ulp _ base _ sex ' ].value _ counts (.reset _ index ).rename ) columns={ ' index } . map({1: '男',0: '女', -1: '未知' } (pt _ age=user _ df [ ' ulp _ base _ age ' ].value _ counts (.sort _ index ).reset _ index ' . map({-1: '未知',1:'18岁以下',2336666岁6:'55岁以上' ) (fig,ax=PLT.subplots (1,2,figsize=) 15 )

t_gender['性别'][0:2], autopct = '%.2f%%', startangle = 90,textprops={'fontsize': 12}, pctdistance=1.35,colors = ['#1a445d','#5292ab'])plt.axis('square')ax2=plt.subplot(122)ax2.set_title('小家电用户的年龄分布', fontsize=20)sns.barplot(x=pt_age.年龄段[1:],y =pt_age['用户数'][1:],color='#5292ab',ax=ax2)sns.despine(left=True) plt.grid(axis='y')plt.ylabel('') pt_pro=user_df['ulp_addr_province'].value_counts().reset_index().rename(columns={'index':'省份','ulp_addr_province':'用户数'})pt_pro=pt_pro[pt_pro.省份!='-1'] #删除省份为-1的省份pt_city=user_df['ulp_addr_city'].value_counts().reset_index().rename(columns={'index':'城市','ulp_addr_city':'用户数'})fig, ax = plt.subplots(1,2,figsize=(15,6))ax1=plt.subplot(121)ax1.set_title('小家电用户省份的分布', fontsize=20)sns.barplot(x=pt_pro.用户数,y =pt_pro.省份,color='#5292ab',ax=ax1)plt.box(False)plt.grid(axis='x')plt.xlabel('用户数')plt.ylabel('')ax2=plt.subplot(122)ax2.set_title('小家电用户前十城市分布', fontsize=20)sns.barplot(x=pt_city.用户数[0:10],y=pt_city.城市[0:10],color='#5292ab',ax=ax2)plt.box(False)plt.grid(axis='x')plt.xlabel('用户数')plt.ylabel('') pt_marriage=user_df['ulp_base_marriage'].value_counts().reset_index().rename(columns={'index':'婚否','ulp_base_marriage':'用户数'})pt_marriage.婚否=pt_marriage['婚否'].map({1:'已婚', 0:'未婚',-1:'未知'})pt_marriage=pt_marriage[pt_marriage.婚否!='未知']pt_child=user_df['ulp_base_child'].value_counts().reset_index().rename(columns={'index':'有孩子可能性','ulp_base_child':'用户数'})pt_child=pt_child[pt_child['有孩子可能性']!='-1']fig, ax = plt.subplots(1,2,figsize=(15,6))ax1=plt.subplot(121)ax1.set_title('小家电用户的婚姻状况', fontsize=20)plt.pie(pt_marriage['用户数'], labels = pt_marriage['婚否'], autopct = '%.1f%%', startangle = 90,textprops={'fontsize': 12},colors = ['#1a445d','#5292ab'])plt.axis('square')ax2=plt.subplot(122)ax2.set_title('小家电用户有孩子的可能性', fontsize=20)sns.set_palette(sns.color_palette("PuBu_r"))plt.pie(pt_child['用户数'],labels = pt_child['有孩子可能性'], autopct = '%.1f%%', startangle = 90,textprops={'fontsize': 12})plt.axis('square') #用户的学历分布pt_edu=user_df['ulp_base_education'].value_counts().sort_index().reset_index().rename(columns={'index':'学历','ulp_base_education':'用户数'})pt_edu.学历=pt_edu['学历'].map({-1:'未知',1:'初中及以下',2:'高中(中专)',3:'大学(大专及本科)',4:'研究生(硕士及以上)'})pt_edu=pt_edu[pt_edu.学历!='未知']#用户的职业分布pt_occup=user_df['ulp_base_profession'].value_counts().reset_index().rename(columns={'index':'职业','ulp_base_profession':'用户数'})pt_occup.职业=pt_occup['职业'].map({'-1':'未知','a':'金融从业者','b':'医务人员','c':'公务员/事业单位','d':'白领/一般职员','e':'工人/服务业人员','f':'教师','g':'互联网从业人员','h':'学生'})pt_occup=pt_occup[pt_occup.职业!='未知']fig, ax = plt.subplots(1,2,figsize=(24,8))ax1=plt.subplot(121)ax1.set_title('小家电用户的学历分布', fontsize=20)sns.barplot(x=pt_edu.学历,y =pt_edu['用户数'][1:],color='#5292ab',ax=ax1)plt.grid(axis='y')plt.xlabel('')plt.ylabel('用户数')ax2=plt.subplot(122)ax2.set_title('小家电用户的职业分布', fontsize=20)sns.barplot(x=pt_occup.职业,y =pt_occup['用户数'],color='#5292ab',ax=ax2)plt.grid(axis='y')plt.xlabel('')plt.ylabel('用户数')sns.despine(left=True) valid_order_df=order_df[(order_df['sale_ord_valid_flag'] ==1)&(order_df['cancel_flag'] ==0)& (order_df['check_account_tm'] !=0)&(order_df['before_prefr_unit_price'] !=0)& (order_df['user_actual_pay_amount'] !=0)] pt_category =valid_order_df['item_third_cate_name'].value_counts().reset_index().rename(columns={'index':'品类','item_third_cate_name':'订单数'})fig, ax = plt.subplots(figsize=(15,6))ax.set_title('小家电用户省份的分布', fontsize=20)sns.barplot(x=pt_category.订单数,y =pt_category.品类,color='#5292ab')plt.box(False)plt.grid(axis='x')plt.xlabel('订单数')plt.ylabel('') valid_order_df['星期']= (pd.to_datetime(valid_order_df.sale_ord_dt).dt.dayofweek+1)valid_order_df['小时']=(valid_order_df.sale_ord_tm.str.split(' ').str[1].str.split(':').str[0]).astype(int)#按周查看pt_week=valid_order_df['星期'].value_counts().sort_index().reset_index().rename(columns={'index':'星期','星期':'订单数'})pt_week['星期']=pt_week['星期'].map({1:'周一',2:'周二',3:'周三',4:'周四',5:'周五',6:'周六',7:'周日'})fig, ax = plt.subplots(1,2,figsize=(15,6))ax1=plt.subplot(121)ax1.set_title('小家电用户订单数量的周分布', fontsize=20)sns.pointplot(x=pt_week.星期,y =pt_week.订单数,color='#5292ab',ax=ax1)plt.grid(axis='y')plt.xlabel('')plt.ylabel('订单数')ax2=plt.subplot(122)ax2.set_title('小家电用户订单数量的时间分布', fontsize=20)sns.pointplot(x=pt_hour.小时,y =pt_hour.订单数,color='#5292ab',ax=ax2)plt.grid(axis='y')plt.xlabel('')plt.ylabel('订单数')sns.despine(left=True) user_df['促销敏感度']=user_df[user_df['cfv_sens_promotion']!='-1']['cfv_sens_promotion'].str.split('-').str[1].astype(int)pt_promotion=user_df['促销敏感度'].value_counts().sort_index().reset_index().rename(columns={'index':'促销敏感度','促销敏感度':'用户数'})pt_promotion.促销敏感度=pt_promotion.促销敏感度.map({1:'不敏感',2:'轻度敏感',3:'中度敏感',4:'高度敏感',5:'极度敏感'})user_df['评价敏感度']=user_df[user_df['cfv_sens_comment']!='-1']['cfv_sens_comment'].str.split('-').str[1].astype(int)pt_comment=user_df['评价敏感度'].value_counts().sort_index().reset_index().rename(columns={'index':'评价敏感度','评价敏感度':'用户数'})pt_comment.评价敏感度=pt_comment.评价敏感度.map({1:'不敏感',2:'轻度敏感',3:'中度敏感',4:'高度敏感',5:'极度敏感'})fig, ax = plt.subplots(1,2,figsize=(24,8))ax1=plt.subplot(121)ax1.set_title('用户的促销敏感度分布', fontsize=20)sns.barplot(x=pt_promotion.促销敏感度,y =pt_promotion['用户数'],color='#5292ab',ax=ax1)plt.grid(axis='y')plt.xlabel('')plt.ylabel('用户数')ax2=plt.subplot(122)ax2.set_title('用户的评价敏感度分布', fontsize=20)sns.barplot(x=pt_comment.评价敏感度,y =pt_comment['用户数'],color='#5292ab',ax=ax2)plt.grid(axis='y')plt.xlabel('')plt.ylabel('用户数')sns.despine(left=True)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。