邮小秘邮编批注用量分析
2019-06-29 本文已影响0人
徐_c90e
#!/usr/bin/env python
# coding: utf-8
# In[1]:
from pandas import Series,DataFrame
import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt #导入matplotlib库
get_ipython().run_line_magic('matplotlib', 'inline')
# In[2]:
df=pd.read_csv(r'D:\python数据分析\usagelog.csv',usecols=['date','times'])
#df
# In[3]:
df=pd.read_csv(r'D:\python数据分析\usagelog.csv')
df
# In[4]:
df_usetimes=df.loc[:,['date','userid','times']] #提取日期、用户ID和次数3列,所有行
#df_usetimes
# In[5]:
df_usetimes2018=df_usetimes[(df_usetimes['date']>=20180101) & (df_usetimes['date']<=20181231) ].sort_values(by='date') #提取2018年的数据
# In[6]:
def getmonth(d):
return(int(d/100)%100 )
df_usetimes2018['date']=df_usetimes2018['date'].map(getmonth)
df_usetimes2018
# In[15]:
df_usetimes2018.groupby(by=['date']).sum().cumsum() #按月汇总统计累计用量
# In[12]:
df_usetimes2018.groupby(by='date').sum().cumsum().plot() #2018年邮小秘累计邮编批注量折线图
# In[19]:
df_usetimes2018.groupby(by=['date']).sum() #按月汇总统计使用量
# In[22]:
df_usetimes2018.groupby(by=['date']).sum().plot(kind='bar') #2018年邮小秘各用户累计邮编批注量柱状图
# In[9]:
def weekdayname_to_weekdaynumbe(dayname):
if dayname == '星期一':
return('1')
elif dayname == '星期二':
return('2')
elif dayname == '星期三':
return('3')
elif dayname == '星期四':
return('4')
elif dayname == '星期五':
return('5')
elif dayname == '星期六':
return('6')
elif dayname == '星期日':
return('7')
else:
return('')
df['day']=df['day'].map(weekdayname_to_weekdaynumbe)
df
# In[10]:
df.sort_values(by=['day','date']) #按照星期、日期先后排序
df.describe()
# In[44]:
df.loc[:,['day','times']].groupby(by='day').sum().plot.pie( subplots=True,figsize=(6,6),autopct='%.2f')
# In[ ]:
image.png
image.png
image.png
image.png