Python 数据分析环境

数据分析领域有很多可选方案,例如SPSS傻瓜式分析工具,SAS专业性商业分析工具,R和python这类需要代码编程类的工具。个人选择是python这类,包括pandas,numpy,matplotlib,sklearn,keras。基于jupyter或者zeppelin作为编程界面,可以用python开发出比较清爽的数据分析报告。

总体来说,jupyter notebook编写的分析结果基本上可以满足要求,但是也有些弊端,例如无法做很好的presentation,虽然可以通过convert slides得到比较好的presentation胶片,但是无法展现直观的数据流和数据分析流程。

理想的数据分析应该包括:清晰的数据流和数据分析流程;直观的数据分析结果报告。

经过对多种开源方案的比较,我选择使用knime+python的方案,可以有以下的优点

利用python和相关数据分析库的能力,对数据建模、分析、可视化,这块基于Anaconda;

利用knime的可视化数据流和report design能力,对数据ETL、建模、分析、报告。

knime + python

anaconda建立数据分析环境

一般需要使用到的库包括:pandas,seanborn,numpy,scipy,statsmodel,matplotlib,keras,TensorFlow。

knime建立可视化数据流/report环境

KNIME的发展始于2004年1月,由康斯坦茨大学的软件工程师团队作为专有产品。由Michael Berthold领导的原始开发团队来自硅谷的一家公司,为制药行业提供软件。最初的目标是创建一个模块化,高度可扩展和开放的数据处理平台,从而轻松集成不同的数据加载,处理,转换,分析和可视化探索模块,而不必关注任何特定的应用领域。该平台旨在成为一个协作和研究平台,也应作为各种其他数据分析项目的集成平台。

Knime IDE基于eclipse开发,插件的安装和eclipse一样。我们需要结合knime和python做数据分析,需要安装以下插件:

KNIME Python Integration,安装后可以使用"Python Script’和"Python View’ node

KNIME Report Designer

knime 中“Python Script” node

Python Script node可以处理前一个节点数据,数据名称是input_table,类型是pandas.DataFrame。DataFrame的操作api就是pandans的api。数据处理完后将结果输出,输出的数据是output_table.

举个例子,选择一个PythonScript node之后,右击选择Configure...,进入python代码输入框。

import pandas as pd

df = input_table

df = df[df['gender'] == 'M']

output_table = df

knime中“Python View” node

Python View节点对输入数据做可视化,输出图片,输入数据通用是input_table,可视化可以使用任意的python库,首选当然是Matplotlib。输出的图片需要赋值给变量output_image。举个例子:

import matplotlib.pyplot as plt

from io import BytesIO

df = input_table

df['score'].plot()

# output the image

buffer = BytesIO()

plt.saveFig(buffer, format='svg')

output_image = buffer.getvalue()

knime中“Image to Report” node

Python View节点输出的图片可以作为report的元素,借助“Image to Report”节点可以将图片输出,注意需要重新设置图片大小,默认100x100尺寸太小。

knime中report模块

report模块基于birt,开发界面和BIRT一样。优点是这里能够将knime数据流中的Report节点数据/图片自动引入到report中的“Data set view”。在设计report的时候可以引入图片或者表格数据。

数据分析流程

BIRT报表

python数据分析的主要流程-KNIME + Python = 数据分析+报表全流程相关推荐

  1. KNIME + Python = 数据分析+报表全流程

    一,Python 数据分析环境 数据分析领域有很多可选方案,例如SPSS傻瓜式分析工具,SAS专业性商业分析工具,R和python这类需要代码编程类的工具.个人选择是python这类,包括pandas ...

  2. 医疗系统流程软件测试用例,如何写全流程的测试用例 - rose8561900的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...

    最近参与了一个小项目,需要写全流程的测试用例,有一些自己的心得.总结如下两种方法给大家参考: 1.写全流程测试用例之前可以先把系统的整体业务流程用Visio画一下,流程图中需要画全涉及到的所有 的模块 ...

  3. android 关机 流程_Android系统关机的全流程解析

    在PowerManager的API文档中,给出了一个关机/重启接口: public void reboot (String reason) 对于这个接口的描述很简单,就是几句话. 接口的作用就是重启设 ...

  4. 保姆级redis6全流程学习和redis秒杀全流程

    文章目录 前言 一.redis解决的问题 1.1.1解决session共享问题 1.1.2降低io读操作 1.2.1nosql数据库的特点 1.2.2 NoSQL的适用场景 1.2.3 NoSQL不适 ...

  5. KNIME Python Integration安装配置指南

    本文介绍安装与 KNIME 分析平台一起使用的 KNIME Python 集成.如下图 KNIME Python集成使用了与KNIME分析平台一起安装的现有Python.由于KNIME Python集 ...

  6. 钱盾率先提出的“全流程屏障”究竟是怎样的一种能力?

    2017年7月13日,在第十六届互联网大会的2017防范打击通讯信息诈骗论坛上,12321网络不良与垃圾信息举报受理中心(以下简称12321举报中心)和国务院联席办钱盾反诈平台举行了战略合作签约仪式. ...

  7. 钱盾联手12321举报中心 “全流程屏障”威力显现

    2017年7月13日,在第十六届互联网大会的2017防范打击通讯信息诈骗论坛上,12321网络不良与垃圾信息举报受理中心(以下简称12321举报中心)和国务院联席办钱盾反诈平台举行了战略合作签约仪式. ...

  8. Linux 0.11-读硬盘数据全流程-46

    Linux 0.11-读硬盘数据全流程-46 读硬盘数据全流程 如果让你来设计这个函数 鸟瞰操作系统的读操作函数 对 buf 区域的内存做校验 verify_area 执行读操作 file_read ...

  9. 电商项目功能测试全流程

    项目介绍-目录 项目管理软件 项目管理软件-禅道的介绍 禅道环境搭建 熟悉禅道的bug管理流程 测试前的准备 被测系统业务逻辑梳理 测试计划与方案设计思路 编写软件测试计划 测试实施阶段 分模块进行测 ...

最新文章

  1. 国外发明的10大仿生机械,这才是真正的黑科技!
  2. OpenCASCADE:OCCT应用框架OCAF之函数机制使用示例
  3. 8个神奇的网页动态流体布局及其做法揭秘
  4. mysql选择联合索引还是单索引?索引列应该使用哪一个最有效?深入測试探讨...
  5. socket模块--TCP和UDP协议下的基础网络通话
  6. 机器学习常用库速查表 文献收藏
  7. 使用arcgis、matlab与R语言GD包进行地理探测器 批量运行,并导出探测结果
  8. 修改c盘user用户文件夹名称
  9. AspNetPager分页控制
  10. 软件工程--快速原型模型详解
  11. 四次考研,终于上岸!反正我感觉很牛逼!
  12. 21中科大软件学院上岸经验帖
  13. 论文笔记 | 用户画像
  14. cogs 347 地震 splay
  15. Android开发工具类集锦
  16. pycharm永久激活教程2019
  17. mybatis在工作中的使用简介
  18. C语言中的static的作用~
  19. 模拟登陆手机版新浪微博
  20. 使用 SLF4J 进行高效的日志记录(@slf4j 注解)

热门文章

  1. scrapy windows
  2. Web前端JQuery面试题(三)
  3. PLSQL 使用技巧汇总贴(一个坑)
  4. sqlserver的索引创建
  5. mysql 使用EF6.0CodeFirst
  6. 用store方法调列表界面的代码
  7. Python_62面向对象
  8. 堆、栈、方法区、直接内存
  9. C#面向对象_抽象类
  10. asp.net core mvc权限控制:在视图中控制操作权限