《数据驱动安全:数据安全分析、可视化和仪表盘》一2.2.1 理解Python数据分析和可视化生态系统

简介: 本节书摘来华章计算机《数据驱动安全:数据安全分析、可视化和仪表盘》一书中的第2章 ,第2.2.1节,[美]杰·雅克布(Jay Jacobs)鲍布·鲁迪斯(Bob Rudis) 著 薛杰 王占一 张卓 胡开勇 蒋梦飏 赵爽 译, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

本节书摘来华章计算机《数据驱动安全:数据安全分析、可视化和仪表盘》一书中的第2章 ,第2.2.1节,[美]杰·雅克布(Jay Jacobs)鲍布·鲁迪斯(Bob Rudis) 著 薛杰 王占一 张卓 胡开勇 蒋梦飏 赵爽 译, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2.2.1 理解Python数据分析和可视化生态系统
虽然Python有很多可用的库,但是仅有少数库在处理数据方面很出色,而我们仍旧称这些库是一个生态系统,是因为每一个库的开发和支持来自不同的组织、社区或者个人,他们互相合作,却组织松散。


image

如下是一些几乎每一个项目都需要的库:
Numpy(www.numpy.org/),可以为通用数据创造一个多维容器,支持对数据的多种操作,生成随机数。它也能够“广播”对于Python对象的操作,使其代码更简洁和高效。
SciPy库(www.scipy.org/scipylib/index.html),Numpy的上层封装,便捷的面向数组操作,能够将Numpy广播操作扩展到Python语言中的其他类型的数据元素。另外它还附带统计相关的操作。
Maplotlib(http://matplotlib.org/),一个Python强力的通用库使你的数据转化为产品级的图像。
pandas(http://pandas.pydata.org),该库提供了更高的性能、易用的数据结构和数据分析工具;pandas将Data.Frame类型引入Python的命名空间里,关于这个详细的情况我们会在2.3节讨论。虽然这样会让那些Python的死忠阿谀pandas,但是本质上来看,Python更像R语言,会使我们更简单地在两者间切换。
这些模块,结合IPython,有时会被SciPy栈的核心组件引用(自从它包含了SciPy库以后,这有点费解)。你可以从www.scipy.org/获取更多关于栈的信息。


image


当你用你自己方法采用此生态系统时,你会发现如下代码:
image


image

import段的代码会载入库里的函数和变量,使其名称和功能性在当前Python工作会话里生效,as组件能使模块里的变量、函数和对象能简单地被引用。
假如你的许多程序组件,都要引用每一个Scipy程序包里的基本常规模块,你可以创建一个文本作为基本模板,包含这些imports和其他(以后)能重复使用的代码来节省打字的时间。
你将来当然会使用软件包来连接数据库、读取文件、执行一些功能,你可以花一些时间在Python Package Index(PyPI)上细读所有灵巧的模块(https://pypi.python.org/pypi),但如果它是和SciPy栈有联系的,它将会成为你数据科学之旅上一个常规的老伙计。
Python的“难点”
Python有两个特性容易让新手受挫。第一个“难点”是空白缩进,空格在Python代码里是非常重要的。对于代码段,没有{}或begin/end来标记开始和结束。你必须保持一致的缩进来区分一起执行的代码段,不一致的缩进会导致解释器输出错误信息,程序代码出现异常。现在大部分文本编辑器或者IDE都可以配置提示功能。
第二个“难点”是在使用变量前缺少声明,将一个变量breaches初始化为某个值,不经意间引用该变量,breaches在解释器里不会出错,但是输出的结果却不符合预期。

Canpy的包管理器(http://docs.enthought.com/canopy/quick-start/package_ manager.html)易于进行Python核心安装和相关的模块的实时更新。但是假如你选择手动安装,你需要依赖操作系统的包管理器来安装的Python解释器。升级独立的附加模块可以使用如下python代码完成:

image

关于Python版本
本书的例子基于Python2.7,在编写本书时,Canpy依然使用Python2.7。现在Python有两个主要的版本,2.7.x和3.3.x,Python 3和Python2.7对默认行为做了很多改变,许多包也完成了更新以便与新版本兼容。但是仍旧有许多包只兼容Python2.7,所以稳定性和广泛性使得Python2.7版本成为了数据分析的好选择。
对于Python2.7和Python3.3之间的改变可以参考《What抯 New In Python 3.0》(http://docs.python.org/3/whatsnew/3.0.html)。

相关文章
|
2天前
|
vr&ar Python
Python 用ARIMA、GARCH模型预测分析股票市场收益率时间序列4
Python 用ARIMA、GARCH模型预测分析股票市场收益率时间序列
22 0
|
2天前
|
机器学习/深度学习 算法 数据可视化
python用支持向量机回归(SVR)模型分析用电量预测电力消费
python用支持向量机回归(SVR)模型分析用电量预测电力消费
25 7
机器学习/深度学习 算法 Python
16 0
|
2天前
|
算法 数据可视化 Python
Python中LARS和Lasso回归之最小角算法Lars分析波士顿住房数据实例
Python中LARS和Lasso回归之最小角算法Lars分析波士顿住房数据实例
11 0
|
2天前
|
机器学习/深度学习 数据采集 数据可视化
Python数据处理与分析
【4月更文挑战第13天】Python在数据处理与分析中扮演重要角色,常用库包括Pandas(数据处理)、NumPy(数值计算)、Matplotlib和Seaborn(数据可视化)、SciPy(科学计算)、StatsModels(统计建模)及Scikit-learn(机器学习)。数据处理流程涉及数据加载、清洗、探索、特征工程、模型选择、评估与优化,以及结果展示。选择哪个库取决于具体需求和数据类型。
13 1
|
3天前
|
数据采集 NoSQL 搜索推荐
五一假期畅游指南:Python技术构建的热门景点分析系统解读
五一假期畅游指南:Python技术构建的热门景点分析系统解读
|
4天前
|
机器学习/深度学习 人工智能 分布式计算
R和Python机器学习:广义线性回归glm,样条glm,梯度增强,随机森林和深度学习模型分析
R和Python机器学习:广义线性回归glm,样条glm,梯度增强,随机森林和深度学习模型分析
|
4天前
|
存储 SQL 数据管理
SAS,R和Python应对数据管理和分析挑战
SAS,R和Python应对数据管理和分析挑战
|
4天前
|
机器学习/深度学习 资源调度 数据可视化
使用Python和Keras进行主成分分析、神经网络构建图像重建
使用Python和Keras进行主成分分析、神经网络构建图像重建
|
4天前
|
Python 数据挖掘 存储
Python 数据分析(PYDA)第三版(七)(4)
Python 数据分析(PYDA)第三版(七)