如果你每天都需要輸出分析報告,報告模式基本一緻,隻是更換裡面的分析資料,每天重複着同樣的工作,費時費力,工作能力沒有絲毫的提升,但是如果你學過python,你就可以通過一個腳本自動生成報告,然後上班就可以騰出時間來學習其他的知識。
利用python生成word,我們需要學習一個新的子產品:python-docx
首先:
安裝子產品: pip install python-docx
導入需要的子產品
from docx import Document
建立一個空文檔:
document = Document()doc.save('new-file-name.docx')
簡單地幾行代碼我們就可以建立一個新的word文檔,是不是很簡單,但是我們今天要做的或許稍有難度,首先先看看我們今天的需求:
今天我們分析一份26所2019年高校開學流量變化
流程是這樣的的:
- 通過pandas分析統計資料
- 通過matplotlib批量生成圖表
- 通過python-docx自動化生成彙報word
報告模式:
- 一個大學一個标題
- 然後一段描述文字:
- 一張趨勢變化圖表
let's go!
現附上最後的結果,然後一步一步解析:
導入兩份資料:曆史資料,今天的資料
gx1=pd.read_clipboard()gx2=pd.read_clipboard()
建立一個word:
document = Document()
擷取高校的校名清單:
gxlist = gx2["高校"].unique().tolist()
通過循環大學校名清單,一個一個處理:
for each in gxlist:
篩選每次循環到的高校資料:
x = gx2[gx2["高校"] == each] g = gx1[gx1["大學"] == each]
通過matplotlib畫一個1*2的折線圖:
sns.set_style("darkgrid") sns.set_context("notebook