透視表、交叉表、matplotlib作圖

from pandas import Series,DataFrame
import pandas as pd

import matplotlib as mpl
import matplotlib.pyplot as plt #導(dǎo)入matplotlib庫
get_ipython().run_line_magic('matplotlib', 'inline')
df=pd.read_csv(r'D:\python數(shù)據(jù)分析\usagelog.csv')
df_usetimes=df.loc[:,['date','userid','times']] #提取日期、用戶ID和次數(shù)3列,所有行
df_usetimes2018=df_usetimes[(df_usetimes['date']>=20180101) & (df_usetimes['date']<=20181231)   ].sort_values(by='date') #提取2018年的數(shù)據(jù)
def getmonth(d):
    return(int(d/100)%100 )
df_usetimes2018['date']=df_usetimes2018['date'].map(getmonth)
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.sort_values(by=['day','date']) #按照星期、日期先后排序

#透視表,各個(gè)用戶在2018年一周7天里每天批注量的分類匯總
df_pivot_table=df.pivot_table(index='userid',columns='day',values='times',aggfunc='sum',margins=True,fill_value=0,margins_name='合計(jì)')
df_pivot_table


#交叉表,反映各個(gè)用戶在2018年一周7天內(nèi)做批量郵編批注的頻率。
df_cross=pd.crosstab(index=df['userid'],columns=df['day']) 

#用matplotlib畫2018年每月批注量對比圖
df_2018_sum=df_usetimes2018.groupby(by='date').sum()
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.title('2018年每月批注量對比圖') 
plt.xlabel('月份')
plt.ylabel('次數(shù)')
plt.bar(df_2018_sum.index,df_2018_sum['times'],color='red')

#累計(jì)批注量折線圖
plt.plot(df_2018_sum.cumsum().index,df_2018_sum.cumsum()['times'],color='red',linestyle=':',marker='x')

image.png

image.png

image.png

image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容