ade4e7c1a10ab703be5e5e75cf34d9bf.png

如果你每天都需要输出分析报告,报告模式基本一致,只是更换里面的分析数据,每天重复着同样的工作,费时费力,工作能力没有丝毫的提升,但是如果你学过python,你就可以通过一个脚本自动生成报告,然后上班就可以腾出时间来学习其他的知识。

db94f7518f16cd098cdbe2bd84a84dfb.gif

利用python生成word,我们需要学习一个新的模块:python-docx

首先:

安装模块: pip install python-docx

导入需要的模块

from docx import Document

创建一个空文档:

document = Document()doc.save('new-file-name.docx')

简单地几行代码我们就可以创建一个新的word文档,是不是很简单,但是我们今天要做的或许稍有难度,首先先看看我们今天的需求:


今天我们分析一份26所2019年高校开学流量变化

流程是这样的的:

  1. 通过pandas分析统计数据
  2. 通过matplotlib批量生成图表
  3. 通过python-docx自动化生成汇报word

报告模式:

  • 一个大学一个标题
  • 然后一段描述文字:
  • 一张趋势变化图表

let's go!


现附上最后的结果,然后一步一步解析:

66050a4d5698209c58c4a08abe64e1ce.png

导入两份数据:历史数据,今天的数据

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]
df2442300f9d2edc77f60df203ab6cab.png

通过matplotlib画一个1*2的折线图:

sns.set_style("darkgrid") sns.set_context("notebook
Logo

一站式 AI 云服务平台

更多推荐