项目目标
一: 从现有数据中,分析出“各个品牌都有多少商品参加了双十一活动
导入模块
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings('ignore')
from bokeh.plotting import figure,show,output_file
from bokeh.models import ColumnDataSource
导入双十一电商打折套路解析数据集,并进行基本的数据处理
import os
os.chdir('E:/Python数据分析电商打折套路解析')
df=pd.read_excel('双十一淘宝美妆数据.xlsx',sheet_name=0)
df.fillna(0,inplace=True)
df.index=df['update_time']
df['date']=df.index.day
对数据进行筛选,统计不同商品的销售开始,结束日期
data1=df[['id','title','店名','date']]#筛选数据
d1=data1[['id','date']].groupby(by='id').agg(['min','max'])['date']#统计不同商品的的销售开始,结束日期
id_11=data1[data1['date']==11]['id']#筛选双十当天买的商品id
id_11=data1[data1['date']==11]['id']
d2=pd.DataFrame({
'id':id_11,'双十一当天是否售卖':True})
id_data=pd.merge(d1,d2,left_index=True,right_on='id',how='left')
id_data.fillna(False,inplace=True)
m=len(d1)
m_11=len(id_11)
m_pre=m_11/m
d2=pd.DataFrame({
'id':id_11,'双十一当天是否售卖':True})
按照商品销售节奏分类,我们可以将商品分为7类
A. 11.11前后及当天都在售 → 一直在售
B. 11.11之后停止销售 → 双十一后停止销售
C. 11.11开始销售并当天不停止 → 双十一当天上架并持续在售
D. 11.11开始销售且当天停止 → 仅双十一当天有售
E. 11.5 - 11.10 → 双十一前停止销售
F. 仅11.11当天停止销售 → 仅双十一当天停止销售
G. 11.12开始销售 → 双十一后上架
d2=pd.DataFrame({
'id':id_11,'双十一当天是否售卖':True})
id_data['type']='待分类'
id_data['type'][(id_data['min']<11)&(id_data['max']>11)]='A'
id_data['type'][(id_data['min']<11)&(id_data['max']==11)]='B'
id_data['type'][(id_data['min']==11)&(id_data['max']>11)]='C'
id_data['type'][(id_data['min']==11)&(id_data['max']==11)]='D'
id_data['type'][id_data['max']<11]='E'
id_data['type'][id_data['双十一当天是否售卖']==False]='F'
id_data['type'][id_data['min'