数据需求:调研数据,包括但不仅限于 问卷星原始数据、 问卷网原始数据

主要功能1: 自动生成概述性质的报告(ppt格式,针对每道题目给出频数统计,并绘制ppt图表)

主要功能2:自动交叉分析,并生成报告(自动卡方检验、TGI、CHI指标计算、简单结论提取等)

依赖环境:

python科学计算所需的包,建议直接安装anaconda(强烈推荐使用python3版本)

安装第三方包 python-pptx: 在cmd中输入:"pip install python-pptx"

安装report包: 下载reportreport.py, 然后放在工作目录即可(省心点可以直接扔进 C:Anaconda3Libsite-packages 中,这样在任何地方都能使用该工具包啦)

python科学计算所需的包,建议直接安装anaconda(强烈推荐使用python3版本)

安装第三方包 python-pptx: 在cmd中输入:"pip install python-pptx"

安装report包: 下载reportreport.py, 然后放在工作目录即可(省心点可以直接扔进 C:Anaconda3Libsite-packages 中,这样在任何地方都能使用该工具包啦)

py2.7版本的pptx包对中文支持有 bug, 请按照如下方式修改

打开文件 ".pptxchartxmlwriter.py"

将大约1338行和1373行的 "escape(str(name))" 改为"escape(unicode(name))"

打开文件 ".pptxchartxmlwriter.py"

将大约1338行和1373行的 "escape(str(name))" 改为"escape(unicode(name))"

【不懂或者不想学python3的请看这】

为了方便更多人使用,我给windows用户提供了一个很简单的使用方法,大家下载项目地址中的文件夹 reportgen[无python经验的下载]即可,使用说明也在其中,非常简单。这里也提供一个百度云盘地址:reportgen简易使用版本链接(密码:as84):

为了方便更多人使用,我给windows用户提供了一个很简单的使用方法,大家下载项目地址中的文件夹 reportgen[无python经验的下载]即可,使用说明也在其中,非常简单。这里也提供一个百度云盘地址:reportgen简易使用版本链接(密码:as84):

3.1 三行代码解决描述统计报告:

importreportasrpt

# 数据编码和导入

# 300_300_0.xls是问卷星的按文本数据,300_300_2.xls是问卷星的按序号数据.

# 如果将他们放在".data"中,则文件名可以缺省,即:`data,code=rpt.wenjuanxing()`

data,code=rpt.wenjuanxing(['300_300_0.xls','300_300_2.xls'])

# 描述统计报告生成

rpt.summary_chart(data,code,filename=u'调研报告初稿');

importreportasrpt

# 数据编码和导入

# 300_300_0.xls是问卷星的按文本数据,300_300_2.xls是问卷星的按序号数据.

# 如果将他们放在".data"中,则文件名可以缺省,即:`data,code=rpt.wenjuanxing()`

data,code=rpt.wenjuanxing(['300_300_0.xls','300_300_2.xls'])

# 描述统计报告生成

rpt.summary_chart(data,code,filename=u'调研报告初稿');

如上代码可以在。out文件夹下生成两个文件

调研报告初稿.pptx: 针对每个题目描述统计,支持单选题、多选题、排序题、矩阵单选题等

调研报告初稿.xlsx: 生成每个题目的统计数据,包括频数和占比

调研报告初稿.pptx: 针对每个题目描述统计,支持单选题、多选题、排序题、矩阵单选题等

调研报告初稿.xlsx: 生成每个题目的统计数据,包括频数和占比

importreportasrpt

# 数据编码和导入

data,code=rpt.wenjuanxing()

# 交叉统计报告生成(假设第一道题Q1是性别选择题)

save_dstyle=['FE','TGI','CHI']#自由选择需要保存的指标(FE:期望频数等)

rpt.cross_chart(data,code,cross_class='Q1',filename=u'性别差异分析',save_dstyle=save_dstyle);

importreportasrpt

# 数据编码和导入

data,code=rpt.wenjuanxing()

# 交叉统计报告生成(假设第一道题Q1是性别选择题)

save_dstyle=['FE','TGI','CHI']#自由选择需要保存的指标(FE:期望频数等)

rpt.cross_chart(data,code,cross_class='Q1',filename=u'性别差异分析',save_dstyle=save_dstyle);

如上代码可以在。out文件夹下生成5个文件

性别差异分析.pptx: 考虑每个题目在性别上的差异

性别差异分析_百分比.xlsx:

性别差异分析_FE.xlsx:

性别差异分析_TGI.xlsx:

性别差异分析_CHI.xlsx:

性别差异分析.pptx: 考虑每个题目在性别上的差异

性别差异分析_百分比.xlsx:

性别差异分析_FE.xlsx:

性别差异分析_TGI.xlsx:

性别差异分析_CHI.xlsx:

3.3 其他实用函数

importreportasrpt

# 文件I/O

data=rpt.read_data(filename)

code=rpt.read_code(filename)

rpt.save_data(data,filename,code)

rpt.save_code(code,filename)

data,code=rpt.wenjuanxing(filepath)#编码问卷星的数据

data,code=rpt.wenjuanwang(filepath)#编码问卷网的数据

# 数据统计函数

t,t1=rpt.qtable(data,code,'Q1')#单变量频数统计

t,t1=rpt.qtable(data,code,'Q1','Q2')#双变量交叉统计

# 数据分析函数

cdata=rpt.contingency(fo)#列联表分析

rpt.gof_test(fo,fe)#拟合优度检验

rpt.chi2_test(fo,fe)#卡方检验

rpt.binomial_interval(p,n)#计算比率的置信区间

# 自动描述统计报告

'''

summary_qlist: 例如['Q1','Q2'],需要分析的问卷题目列表,缺省为code中所有的关键词

template: 例如{'path':'mytemplate.pptx','layouts':[1,2]}, 缺省为pptx自带的模板

'''

rpt.summary_chart(data,code,filename=u'描述统计报告',summary_qlist=None,

max_column_chart=20,template=None)

# 自动交叉统计报告

'''

cross_class: 需要交叉分析的题目,如:'Q1'

cross_qlist: 例如['Q1','Q2'],需要分析的问卷题目列表,缺省为code中所有的关键词

plt_dstyle: 绘制在ppt上使用的数据格式,缺省为百分比表,可以选择'TGI'等

save_dstyle: 需要保存的数据,例如:['TGI','FO','TWI','CHI']

template: 例如{'path':'mytemplate.pptx','layouts':[1,2]}, 缺省为pptx自带的模板

'''

rpt.cross_chart(data,code,cross_class,filename=u'交叉分析',cross_qlist=None,

delclass=None,plt_dstyle=None,cross_order=None,significance_test=False,

reverse_display=False,total_display=True,max_column_chart=20,save_dstyle=None,

template=None):

importreportasrpt

# 文件I/O

data=rpt.read_data(filename)

code=rpt.read_code(filename)

rpt.save_data(data,filename,code)

rpt.save_code(code,filename)

data,code=rpt.wenjuanxing(filepath)#编码问卷星的数据

data,code=rpt.wenjuanwang(filepath)#编码问卷网的数据

# 数据统计函数

t,t1=rpt.qtable(data,code,'Q1')#单变量频数统计

t,t1=rpt.qtable(data,code,'Q1','Q2')#双变量交叉统计

# 数据分析函数

cdata=rpt.contingency(fo)#列联表分析

rpt.gof_test(fo,fe)#拟合优度检验

rpt.chi2_test(fo,fe)#卡方检验

rpt.binomial_interval(p,n)#计算比率的置信区间

# 自动描述统计报告

'''

summary_qlist: 例如['Q1','Q2'],需要分析的问卷题目列表,缺省为code中所有的关键词

template: 例如{'path':'mytemplate.pptx','layouts':[1,2]}, 缺省为pptx自带的模板

'''

rpt.summary_chart(data,code,filename=u'描述统计报告',summary_qlist=None,

max_column_chart=20,template=None)

# 自动交叉统计报告

'''

cross_class: 需要交叉分析的题目,如:'Q1'

cross_qlist: 例如['Q1','Q2'],需要分析的问卷题目列表,缺省为code中所有的关键词

plt_dstyle: 绘制在ppt上使用的数据格式,缺省为百分比表,可以选择'TGI'等

save_dstyle: 需要保存的数据,例如:['TGI','FO','TWI','CHI']

template: 例如{'path':'mytemplate.pptx','layouts':[1,2]}, 缺省为pptx自带的模板

'''

rpt.cross_chart(data,code,cross_class,filename=u'交叉分析',cross_qlist=None,

delclass=None,plt_dstyle=None,cross_order=None,significance_test=False,

reverse_display=False,total_display=True,max_column_chart=20,save_dstyle=None,

template=None):

文/JSong @2017.02.28

文/JSong @2017.02.28

python生成ppt_实战 | Python自动生成PPT分析报告相关推荐

  1. python项目分析报告_实战 | Python自动生成PPT分析报告

    原标题:实战 | Python自动生成PPT分析报告 在数据分析里面有一句话是说,80%的时间要用于数据清洗和整理,而我觉得理想的状态应该是把更多的把时间花在数据背后的洞察当中.去年11月在简书占了个 ...

  2. Python实现输入电影名字自动生成豆瓣评论词云图(带GUI界面)小程序

    Python实现输入电影名字自动生成豆瓣评论词云图(带GUI界面)小程序 一.项目背景 电影逐渐成为人们生活的不可或缺的一部分,而了解一部电影的可以通过电影评分与大众推荐度,但以上的方式都太过于片面, ...

  3. 渗透工具NessusToReport:一个nessus自动报告生成工具,可以用来自动生成nessus扫描器的中文报告--NessusToReport

    Git地址: Hypdncy/NessusToReport: nessus扫描报告自动化生成工具 (github.com) NessusToReport 这是一个nessus自动报告生成工具,可以用来 ...

  4. python ppt自动生成_实战 | Python自动生成PPT调研报告

    原标题:实战 | Python自动生成PPT调研报告 原文: 全文约 3821 字,读完可能需要 5 分钟. 文/JSong @2017.02.28 在数据分析里面有一句话是说,80%的时间要用于数据 ...

  5. python 文案自动生成_Python自动化测试如何自动生成测试用例?

    原文作者:陈安妮annie1 原出处:简书 上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰,我们将立即处理. 传统的测试用例需要测试或者开发人员将用户的操作用代码表示出来,通过断言判断 ...

  6. python drop函数_用python帮财务小姐姐自动生成财务报表

    ↑↑↑关注后"星标"简说Python 人人都可以简单入门Python.爬虫.数据分析简说Python严选 来源:python数据分析之禅   作者:小dull鸟 One old w ...

  7. 自动生成python接口文档_Django自动生成Swagger接口文档

    Django自动生成Swagger接口文档 1. 前言 当接口开发完成,紧接着需要编写接口文档.传统的接口文档通常都是使用Word或者一些接口文档管理平台进行编写,但此类接口文档维护更新比较麻烦,每次 ...

  8. 10行代码教你用Python扫描Excel表格,自动生成条形码!

    一.需求分析 条形码应用广泛,尤其是人事.财务和库管等等岗位,常需根据excel文件成批生成条码,如果是经常性天天做,用excel的自己控件还是很枯燥烦人的. 当然在学习Python的道路上肯定会困难 ...

  9. Python|shp文件逐图斑自动生成地块界址点信息表——OGR库实现

    工作中,有时需要从面shp文件中导出拐点坐标,并生成土地报批标准格式TXT文件或界址点信息表.ArcGIS中可以通过工具提取出拐点坐标,但是无法自动生成我们需要的成果格式,需要手动录入.今天分享基于P ...

最新文章

  1. python中cgi到底是什么_十分钟搞懂什么是CGI(转)
  2. 通过SSH克隆远程仓库(GitLab)到本地
  3. 访问修饰符 c# 1613703072
  4. Tips:无法在Windows2012 R2+exchange2010中文版上安装SP3 RU8v2
  5. [转]Sublime Text 2 C++编译运行简单配置
  6. JWTToken在线编码生成
  7. Android 爱心万花筒简单实现
  8. python版本时间_python 获取文件版本号和修改时间
  9. 能留住女友的,都是王者
  10. 脚本变量中包含空格的解决办法
  11. Vscode ssh远程连接失败解决办法
  12. QQ和微信一键加群加好友链接代码实现
  13. STM32--vs1053 WAV录音实现(保存在SD卡)
  14. [教程]安装青鸟云Web服务器
  15. 腾讯20岁生日前夕,给了自己一个改变
  16. android tv 菜单键,Android TV开发总结(三)构建一个TV app的焦点控制及遇到的坑
  17. 大数据生态系统组件基础学习
  18. 用Java写股票查询系统
  19. Stata常用命令示例
  20. 洛谷 P1443 马的遍历(BFS)

热门文章

  1. 选字验证码破解思路:CTPN - 自然场景文本检测
  2. 写一段关于等离子杀菌技术的商业模式规划
  3. 理解O(log2N)和O(Nlog2N)
  4. [转载]前端代码规范 及 最佳实践
  5. 邮箱-手机账号格式如何进行正则表达式校验
  6. 华夏银行签约金融壹账通 借助金融科技转型升级
  7. Tomb.finance每周更新(11.8-14)
  8. Markdown基础总结
  9. 凡事当立则行,虽令不行
  10. 使用cerebro可视化ElasticSearch集群信息