电商销售数据分析21957.pptx
LOGO电商销售记录分析电商销售记录分析 严智强、贺强、刘瑞、严智强、贺强、刘瑞、崔亚松、臧茹歌崔亚松、臧茹歌Background网购流网购流行行电商崛电商崛起起消费人消费人群群消费习消费习惯惯潜在价潜在价值值消费记消费记录录消费喜消费喜好分析好分析市场方市场方向向Contentscontentscontents电商数据电商数据电商数据电商数据天猫手机销售数据分析天猫手机销售数据分析天猫手机销售数据分析天猫手机销售数据分析京东商城销售数据分析京东商城销售数据分析京东商城销售数据分析京东商城销售数据分析数据的数据的获取与获取与预处理预处理替代商替代商品的挖品的挖掘掘价格空价格空洞的发洞的发现现牛仔裤销牛仔裤销售数据的售数据的分析分析用户消费用户消费记录的分记录的分析析淘宝网作为国内第一大电商,占有淘宝网作为国内第一大电商,占有近近50%市场份额,而天猫商城则是市场份额,而天猫商城则是所有优质店铺的集合,每月会产生所有优质店铺的集合,每月会产生大量销售数据,这里以天猫近一个大量销售数据,这里以天猫近一个月的手机销售数据进行分析,找出月的手机销售数据进行分析,找出这些数据隐含的价值。这些数据隐含的价值。天猫手机销售数据分析天猫手机销售数据分析天猫手机销售数据分析天猫手机销售数据分析数据的获取与预处理数据的获取与预处理 替代商品的挖掘替代商品的挖掘价格空洞的发现价格空洞的发现数据的获取与处理数据的获取与处理构建一个爬虫脚本,从天猫上获取销量前构建一个爬虫脚本,从天猫上获取销量前600的手机的手机销售记录,并匹配出每条记录的机型、售价、销量。销售记录,并匹配出每条记录的机型、售价、销量。How to get the data爬虫脚本爬虫脚本#coding=gbkimport urllibimport ref1=open(rE:tmaoshoujihtml.txt)#此处存储了销量前此处存储了销量前600的网页地址的网页地址http=f1.readlines()f1.close()f2=open(rE:tmaoshouji.txt,a)for i in http:content=urllib.urlopen(i.strip().read()f2.write(content)f2.write(n)f2.write(#*50)f2.write(n)f2.close()f3=open(rE:tmaoshouji.txt)lines=for line in f3.readlines():lines+=line.strip()f3.close()pattern=rem title=(.*?).*?.*?target=_blank title=(.*?).*?(.*?)result=re.findall(pattern,lines)f4=open(rE:tmaoshoujiInformation.txt,w)#该文件中存储了每件手机的记录(机型、售价、销量)该文件中存储了每件手机的记录(机型、售价、销量)for item in result:for j in range(3):f4.write(itemj)f4.write(t)f4.write(n)f4.close()销量销量价格价格 散点图散点图 替代商品的挖掘替代商品的挖掘 我们认为,如果两件手机的售价和销我们认为,如果两件手机的售价和销量十分接近,则认为这两件手机互为替代量十分接近,则认为这两件手机互为替代商品。从网络营销的特点来看,从店铺的商品。从网络营销的特点来看,从店铺的角度出发,选择进价更低的手机可获得更角度出发,选择进价更低的手机可获得更多利润。多利润。替代商品的挖掘替代商品的挖掘我们以欧氏距离小于等于我们以欧氏距离小于等于2为标准为标准sqrt(a.price-b.price)2+(a.sales_number-b.sales_number)2)=2将手机聚类,找出互为替代的手机。将手机聚类,找出互为替代的手机。替代商品的挖掘替代商品的挖掘from _future_ import divisionfrom math import sqrt#coding=gbkf1=open(rE:tmaoshoujiInformation.txt)records=f1.readlines()f1.close()price=number=product=for i in range(len(records):item=recordsi.split(t)price.append(item0)product.append(item1)number.append(item2)for i in range(len(price):for j in range(i+1,len(price):distance=sqrt(pow(float(pricei)-float(pricej),2)+pow(int(numberi)-int(numberj),2)if distance=2:#if the distance minuse 2,we consider the two is replaced product print producti,t,productj else:pass所得结果所得结果结果发现,下列每一组中的手机互为替代商品结果发现,下列每一组中的手机互为替代商品(a)UMO/优摩优摩 w9220 Yusun/语信语信 T28(b)Huawei/华为华为 C8812 ZTE/中兴中兴 N807(c)OPPO U705T TCL Y910T(d)Coolpad/酷派酷派 8150D ZTE/中兴中兴 V889D(e)K-Touch/天语天语 E800 UMO/优摩优摩 W800 七喜七喜 TD710(f)UMO/优摩优摩 W800 七喜七喜 TD710 Konka/康佳康佳 E5680(g)UniscopE/优思优思 U1201 Huawei/华为华为 Y300-0000(h)Coolpad/酷派酷派 8050 Coolpad/酷派酷派 E239(i)Motorola/摩托罗拉摩托罗拉 XT800 索爱正品索爱正品SA-I960 安卓安卓4.0(j)Coolpad/酷派酷派 8020 Haier/海尔海尔 HT-I600(k)七喜七喜 H750 Gionee/金立金立 C620(l)Lenovo/联想联想 A790E 广信广信 ef58(m)Huawei/华为华为 c8810 Samsung/三星三星 s6108(n)AUX/奥克斯奥克斯 V930 TCL Y710(o)Philips/飞利浦飞利浦 W8355 ONN/欧恩欧恩 V8 16G版版(p)TCL Y710 Gionee/金立金立 GN705w价格空洞的发现价格空洞的发现经过分析,我们发现,作为中高端机营销,可选择经过分析,我们发现,作为中高端机营销,可选择3500-4000的价格空洞。可在较小压力下打入市场。的价格空洞。可在较小压力下打入市场。京东商城销售数据分析京东商城销售数据分析牛仔裤销售数据分析牛仔裤销售数据分析 用户消费记录的分析用户消费记录的分析从生产厂家的角度来说,如果得到大量消从生产厂家的角度来说,如果得到大量消费者的尺码大小及颜色偏好,则对生产和费者的尺码大小及颜色偏好,则对生产和销售是非常有利的。因此,我们统计了京销售是非常有利的。因此,我们统计了京东女性牛仔裤的销售记录,从中得到各尺东女性牛仔裤的销售记录,从中得到各尺码和颜色在总的销售数据中的比例,从而码和颜色在总的销售数据中的比例,从而指导生产。指导生产。通过用户的消费记录,分析出用户的喜好通过用户的消费记录,分析出用户的喜好品牌,从而当该品牌有新产品推出和促销品牌,从而当该品牌有新产品推出和促销活动时优先推荐给这些用户。活动时优先推荐给这些用户。牛仔裤销售数据分析牛仔裤销售数据分析用户尺码大小用户尺码大小 颜色偏好颜色偏好数据获取与预处理数据获取与预处理 以爬虫程序从京东商城获取牛仔裤销售记以爬虫程序从京东商城获取牛仔裤销售记录,并过滤出每个用户所购买的颜色、尺录,并过滤出每个用户所购买的颜色、尺码。码。数据获取与预处理数据获取与预处理#coding=gbkimport reimport urllibpage=16,16,16,16,16,16,16,16,15,15,15,15,15,15,15,14,14,14,14,14,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,12#page记录了每件商品的评论页面数目记录了每件商品的评论页面数目f1=open(rC:UsersYANZHIQIANGDesktopjdongNiuZaiKuAdd.txt)#goods存储商品评论地址存储商品评论地址goodslist=f1.readlines()f1.close()s1=rE:jdongniuzaikupinglunAdds3=.txtfor i in range(0,len(goodslist):for j in range(1,pagei+1):content=urllib.urlopen(goodslisti.strip()+str(j)+-0.html).read()print goodslisti.strip()+str(j)+-0.html save=s1+str(i)+s3 f2=open(save,a)f2.write(content)f2.write(goodslisti.strip()+page+str(j)+downloaded n)f2.write(#n)f2.close()s1=rE:jdongniuzaikupinglunAdds3=.txt数据获取与分析数据获取与分析for i in range(0,35):s=s1+str(i)+s3 f=open(s)lines=for line in f.readlines():lines+=line.strip()f.close()color=r颜颜.*?色:色:(.*?)size=r尺尺.*?码:码:(.*?)date=r购买日期:购买日期:(.*?)multiColor=re.findall(color,lines)print file,i,has,len(multiColor),color recordsn multiSize=re.findall(size,lines)print file,i,has,len(multiSize),size recordsn multiDate=re.findall(date,lines)print file,i,has,len(multiDate),date recordsn f1=open(s1+str(i)+color+s3,w)for c in multiColor:f1.write(c)f1.write(n)f1.close()f2=open(s1+str(i)+size+s3,w)for s in multiSize:f2.write(s)f2.write(n)f2.close()f3=open(s1+str(i)+date+s3,w)for d in multiDate:f3.write(d)f3.write(n)f3.close()用户尺码大小与颜色偏好挖掘用户尺码大小与颜色偏好挖掘#coding=gbkimport rename=白白,黑黑,粉粉,枣红枣红,酒红酒红,大红大红,红红,紫紫,绿绿,杏杏,黄黄,棕棕,宝蓝宝蓝,彩蓝彩蓝,海蓝海蓝,深蓝深蓝,浅蓝浅蓝,灰蓝灰蓝,中蓝中蓝,天蓝天蓝,墨兰墨兰,墨蓝墨蓝,藏蓝藏蓝,蓝蓝,橙橙,灰灰countColor=0*i for i in range(len(name)f1=open(rE:jdongallNiuZaiKuColor.txt)color=f1.readlines()f1.close()for j in color:for k in range(0,len(name):if re.search(namek,j):countColork=countColork+1 break f2=open(rE:jdongcolorSummary.txt,a)d=dict(zip(name,countColor)for key in d.keys():f2.write(str(key)+t+str(dkey)f2.write(n)f2.close()daxiao=str(i)for i in range(10,36)countSize=i*0 for i in range(len(daxiao)f3=open(rE:jdongallNiuZaiKuSize.txt)size=f3.readlines()f3.close()用户尺码大小与颜色偏好挖掘用户尺码大小与颜色偏好挖掘for a in size:for b in range(0,len(daxiao):if re.search(daxiaob,a.strip():countSizeb=countSizeb+1 break elif re.search(XS$,a.strip():countSize14=countSize14+1 break elif re.search(S$,a.strip():countSize15=countSize15+1 break elif re.search(M$,a.strip():countSize16=countSize16+1 break elif re.search(L$,a.strip():countSize17=countSize17+1 break elif re.search(XL$,a.strip():countSize18=countSize18+1 break elif re.search(XXL$,a.strip():countSize19=countSize19+1 break elif re.search(XXXL$,a.strip():countSize20=countSize20+1 break else:breakf4=open(rE:jdongsizeSummary.txt,a)d2=dict(zip(daxiao,countSize)for key in d2.keys():f4.write(str(key)+t+str(d2key)f4.write(n)f4.close()最后得到最后得到33,098条牛条牛仔裤的颜色、尺码等仔裤的颜色、尺码等销售信息销售信息。用户尺码大小与颜色偏好挖掘用户尺码大小与颜色偏好挖掘 用户消费记录的分析用户消费记录的分析数据的获取数据的获取 用户品牌偏好的分析用户品牌偏好的分析数据的获取数据的获取 利用爬虫程序,获取用户消费记录原始利用爬虫程序,获取用户消费记录原始html代码,并过滤出代码,并过滤出记录数大于记录数大于30的用户的用户的消费消费记录。的消费消费记录。数据的获取数据的获取from _future_ import division#coding=gbkimport mathimport urllibimport res1=rE:jdonguseruser_firstpages3=.txtf=open(rE:jdonguseruserPingLunShuDaYu30.txt,a)for i in range(1000000,1008594):yuanshifile=s1+str(i)+s3 f1=open(yuanshifile)lines=for line in f1.readlines():lines+=line.strip()f1.close()n=r评论数:评论数:(d+)条条 commentNumber=re.findall(n,lines)if commentNumber:if int(commentNumber0)29:f.write(id+str(i)f.write(t)f.write(commentNumber0)f.write(n)f.flush()else:pass数据的获取数据的获取 else:pass print user,i,got itf.close()f1=open(rE:jdonguseruserPingLunShuDaYu30.txt)user=f1.readlines()f1.close()h1=rhttp:/ con in user:sub=con.split()num=sub0 f2=open(s1+str(num)+s2,a)page=math.ceil(int(sub1)/30)for i in range(1,int(page+1):html=h1+str(num)+h2+str(i)+h3 record=urllib.urlopen(html).read()f2.write(record)f2.close()用户品牌喜好分析用户品牌喜好分析#coding=gbkimport reimport osf1=open(rC:UsersYANZHIQIANGDesktopbrand.txt)brand=f1.readlines()f1.close()d=for i in brand:di.strip()=0s1=rE:jdongkehucustmers2=BrandStatistic.txtf3=open(s1+final+s2,w)#save the records for item in os.listdir(rE:jdonguser):用户品牌喜好分析用户品牌喜好分析for item in os.listdir(rE:jdonguser):if item.endswith(goods_records.txt):s=str(item)Id=re.search(d+,s).group()f2=open(rE:jdonguser+/+str(item),r)lines=for line in f2.readlines():lines+=line.strip()f2.close()f3.write(Id+t)for key in d.keys():dkey=len(re.findall(key,lines)if dkey=5:f3.write(str(key)+str(t)+str(dkey)+str(t)else:pass f3.write(n)f3.close()f4=open(rE:jdongkehucustmerfinalBrandStatistic.txt)arry=f4.readlines()f4.close()f5=open(rE:jdongkehubrandRecomendation.txt,w)for i in arry:if len(i.split()=2:f5.write(i)else:passf5.close()消费记录统计结果消费记录统计结果 经过过滤,我们共得到经过过滤,我们共得到939个用户的消费个用户的消费记录。记录。对每个用户各自所购商品的品牌进行统计对每个用户各自所购商品的品牌进行统计若某个用户购买某个品牌产品次数不低于若某个用户购买某个品牌产品次数不低于5则记录该用户编号及该品牌。则记录该用户编号及该品牌。共得到共得到546个用户的喜好品牌个用户的喜好品牌ID 品牌品牌 1000007三星三星 51000015爱普生爱普生5联想联想 161000017亨氏亨氏 10德力西德力西51000018迪士尼迪士尼5惠普惠普 51000026铼德铼德 6闪迪闪迪 7困难与问题困难与问题程序语言对中文的处理能力一般程序语言对中文的处理能力一般关联分析的困难关联分析的困难用户评价的分析用户评价的分析展望展望我们认为,京东与淘宝不同的是,一般情我们认为,京东与淘宝不同的是,一般情况下京东的商品大部分都是自己配送,而况下京东的商品大部分都是自己配送,而不是通过其他物流公司。所以,建立更加不是通过其他物流公司。所以,建立更加快捷高效的物流体系不仅可以节约运输成快捷高效的物流体系不仅可以节约运输成本,还可以给客户提供更加快捷优质的服本,还可以给客户提供更加快捷优质的服务。利用已有的销售数据,完全可以对货务。利用已有的销售数据,完全可以对货物的分配、存储以及送货点的布局进行精物的分配、存储以及送货点的布局进行精确布控,从而实现确布控,从而实现智能物流智能物流。LOGOLOGO演讲完毕,谢谢观看!