資源簡介
生成飯店營業額模擬數據文件data.csv,使用pandas讀取文件data.csv中的數據,刪除其中所有缺失值;使用matplotlib生成折線圖,反應該飯店每天的營業額情況,并把圖形保存為本地文件first.jpg;按月份進行統計,使用matplotlib繪制柱狀圖顯示每個月份的營業額,并把圖形保存為本地文件second.jpg;按月份進行統計,找出相鄰兩個月最大漲幅,并把漲幅最大的月份寫入文件 maxMonth.txt;按季度統計該飯店2017年的營業額數據,使用matplotlib生成餅狀圖顯示2017年4個季度的營業額分布情況,并把圖形保存為本地文件third.jpg。
代碼片段和文件信息
import?pandas?as?pd
import?matplotlib.pyplot?as?plt
#?讀取數據,丟棄缺失值
df?=?pd.read_csv(‘data.csv‘?encoding=‘cp936‘)
df?=?df.dropna()
#?生成營業額折線圖
plt.figure()
df.plot(x=‘日期‘)
plt.savefig(‘first.jpg‘)
#?按月統計,生成柱狀圖
plt.figure()
df1?=?df[:]
df1[‘month‘]?=?df1[‘日期‘].map(lambda?x:?x[:x.rindex(‘-‘)])
df1?=?df1.groupby(by=‘month‘?as_index=False).sum()
df1.plot(x=‘month‘?kind=‘bar‘)
plt.savefig(‘second.jpg‘)
#?查找漲幅最大的月份,寫入文件
df2?=?df1.drop(‘month‘?axis=1).diff()
m?=?df2[‘銷量‘].nlargest(1).keys()[0]
with?open(‘maxMonth.txt‘?‘w‘)?as?fp:
????fp.write(df1.loc[m?‘month‘])
#?按季度統計,生成餅狀圖
plt.figure()
one?=?df1[:3][‘銷量‘].sum()
two?=?df1[3:6][‘銷量‘].sum()
three?=?df1[6:9][‘銷量‘].sum()
four?=?df1[9:12][‘銷量‘].sum()
plt.pie([one?two?three?four]labels=[‘one‘?‘two‘?‘three‘
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????972??2019-10-27?10:13??analyze.py
?????文件?????????611??2019-10-27?10:18??data.py
- 上一篇:Python核心編程
- 下一篇:python抓取電影信息
評論
共有 條評論