首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

工具 reportgen v0.1.8 更新

这段时间,我对 reportgen 进行了大工程的修改和更新。将之前在各个文章中出现的函数进行了封装,同时也对现有工具包的一些逻辑进行了调整。

1、reportgen 简介

reportgen 的底层是 pptx 文件生成接口,它能非常方便的将DataFrame等数据导出为pptx上的图表。你可以自定义图表的类型(条形图、饼图、折线图等),也可以全部交给工具包来自动化。另外不排除后期会增加其他文件形式(如可交互的 html 等)接口的可能性,但短期内估计比较难。

在这些接口上是一些辅助函数,包括特征类型的判断、sklearn中缺少的预处理函数、一些特殊的度量函数、模型评估报告函数、关联分析函数等。工具包的愿景是对数据的自动分析,自动出报告,这期间缺乏的函数我都可能加进去。这次更新,主要就是完善了这一层。

工具包的最外层就是各类数据的分析报告生成。目前已经完成的是问卷型数据和通用性数据。其中问卷型数据已经很完善,基本只需要修bug了,单独作为一个子包放在 reportgen中,大家可以来使用。至于通用性数据,目前已经完成了第一步,即描述统计型的分析报告,大家可以用来实现。第二步准备实现给定目标变量后的分析,包含交叉分析、各特征的重要性、监督学习模型等。

另外,这次我放了一些案例在github上,用于大家下载后的测试和学习用,网址是

2、通用数据的分析

在这个分析报告中,我会对DataFrame数据的每一个字段进行分析,判断它们的类型,然后画出合适的图表。对于因子变量,自动绘制柱状图或条形图;对于数值型变量,自动绘制出拟合的分布图;对于一般的文本,自动绘制词云。同时也会给出一个统计表格,内含各个变量的场景统计数据,如最大值、最小值、均值、标准差、唯一数个数、缺失率等。下面是一个例子,代码和数据可在我的github中寻找。

它会生成如下 pptx 文件

另外这里有一些过程函数也推荐给大家

特征统计分析

数据预处理

信息论相关度量函数

机器学习模型辅助建模函数

3、问卷型数据分析

问卷数据涉及到各种题型,包括单选题、多选题、填空题、矩阵多选题、排序题等等。不管是

频数统计还是交叉分析,单选题都很好处理, 但其他题目就相对复杂的多,比如单选题和多选题

之间的交叉统计,多选题和多选题之间的交叉统计等。

为了能使用统一的函数进行常规分析,本工具包使用专门针对问卷设计的数据类型(或者说编码方式)。在这种类型中,每一份问卷都有两个文件,data 和 code ,它们的含义如下:

1).:按选项序号编码的数据(csv、xlsx等都可以)。具体的示例如下:

其中 Q1、Q2是单选题,在Q1中,1代表男,2代表女。Q3是多选题,一共有四个选项,分别代表 Q3_A1:’旅游’,Q3_A2:’健身’,Q3_A3:’艺术’,Q3_A4:’养生’. 多选题常用这种01矩阵存储。

2).:编码文件( json格式,就是 python中的字典类型), 给定每道题的题号、选项编码等信息。

每一个题目都有如下字段:

: 题目内容

: 题目对应的编码

: 题目对应的编码(矩阵单选题专有)

: 题目类型,单选题、多选题、矩阵单选题、排序题、填空题等

: 该题的索引,如多选题的 [‘Q1_A1’,’Q1_A2’,..]

: 非必须,题目类别的顺序,用于PPT报告的生成[一般后期添加]

: 非必须,特殊题型的标注

: 非必须,dict,每个选项的权重,用于如月收入等的平均数统计

具体示例如下:

该工具包包含如下函数:

文件 IO

, 从本地读取code数据,支持excel文件和json文件

, 将code 保存为 xlsx 或json数据

, 支持打开文件窗口来选择问卷数据

, 读取本地的数据,自适应xlsx、csv等

, 将问卷数据(data和code)保存到本地

, 编码问卷网平台的问卷数据,输入为问卷网上下载的三个文件

, 编码问卷星平台的问卷数据,输入为问卷星网站上下载的两个xls文件(按选项序号和按选项文本)

数据处理

: 对问卷中的一些特殊题型进行处理,如将城市题分类成省份、城市、城市级别等

:

:

: 见data_merge

: 合并两份问卷数据,常见于多个推动渠道的问卷合并

: 根据用户填写时间来筛选问卷,会根据填问卷累计时间曲线的拐点来给出剔除的时间点

:

: 将问卷数据展平,便于将多份问卷数据存储在同一个数据库中

统计检验等

: 样本量计算公式

: 置信区间计算公式

: 拟合优度检验

: 卡方检验

: 卡方检验,适用于观察频数过少的情形

: 方差分析

数据分析

: 对应分析,目前只支持两个变量

: 态度题的聚类分析,会根据轮廓系数自动选择最佳类别数

: 关联分析,用于多选题的进一步分析

统计

: 列联表分析,统一给出列联表的各种数据,包含fo、fop、TGI等

: 单个题目的统计分析和两个题目的交叉分析,给出频数表和频率表

可视化

: 整体统计报告,针对每一道题,选择合适的图表进行展示,并输出为pptx文件

: 交叉分析报告,如能将年龄与每一道题目进行交叉分析,并输出为pptx文件

: 综合上两个,一键生成

: 生成一个表格,内含每个题目的相关统计信息

: 散点图绘制,不同于matplotlib的是,其能给每个点加文字标签

: 桑基图绘制,不画图,只提供 R 需要的数据

python实践

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180329G1OCN400?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券