赞
踩
NumPy
NumPy(Numerical Python)是Python科学计算的基础包,它可以提供以下功能。
■ 快速高效的多维数组对象ndarray。
■ 用于对数组执行元素级计算和直接对数组执行数学运算的函数。
■ 用于读写硬盘上基于数组的数据集的工具。
■ 线性代数运算、傅里叶变换,以及随机数生成。
■ 用于将C、C++、Fortran代码集成到Python的工具。
除了为Python提供快速的数组处理能力,NumPy在数据分析方面还有另外一个主要作用,即作为算法之间传递数据的容器。对于数值型数据,NumPy数组在存储和处理数据时要比内置的Python数据结构高效得多。此外,由高级语言(如C和Fortran)编写的库可以直接操作NumPy数组中的数据,无须进行任何数据复制工作。
pandas是Python数据分析的核心库,它是基于NumPy构建的含有复杂数据结构和工具的数据分析包。pandas最初是被作为金融数据分析工具而开发出来的,因此,它为时间序列分析提供了很好的支持。pandas纳入大量库和标准数据模型,提供了大量的可快速便捷处理数据的函数和高效操作数据集所需的工具。
类似于NumPy的核心是ndarray,pandas则是围绕着Series和DataFrame这两个核心数据结构展开的,而Series和DataFrame分别对应于一维的序列和二维的表结构。pandas提供了复杂精细的索引功能,以便快捷地完成重塑、切片、聚合和选取数据子集等操作。
Matplotlib
Matplotlib是最流行的用于绘制数据图表的Python库,它非常适合创建出版物中用的图表。Matplotlib提供了一整套与MATLAB相似的命令API,十分适合交互式地进行制图,而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。通过Matplotlib的pyplot子库提供的与MATLAB类似的绘图API,可方便用户快速绘制2D图表,例如直方图、条形图、散点图等。
Matplotlib还提供了名为pylab的模块,其中包括了许多NumPy和pyplot中常用的函数,方便用户快速进行计算和绘图。Matplotlib与IPython结合提供了一个非常好的交互式数据绘图环境,绘制的图表也是交互式的,用户可以利用绘图窗口工具栏中的相应工具放大图表的某个区域,或对某个图表进行平移浏览。
SciPy
SciPy是一组专门用于科学计算的开源Python库,它构建于NumPy的基础上,提供了一个用于在Python中进行科学计算的工具集。SciPy经常与NumPy、pandas、Matplotlib和IPython这些核心库一起使用,SciPy主要包括8个包,这些包分别对应着不同的科学计算领域,SciPy主要包括的包见表。
scikit-learn
scikit-learn是一个简单有效的数据挖掘和数据分析工具,可供用户在各种环境下重复使用,而且scikit-learn是建立在NumPy、SciPy和Matplotlib的基础上的,对一些常用的算法进行了封装。scikit-learn的基本功能主要分为六大部分:分类、回归、聚类、数据降维、模型选择和数据预处理。在数据量不大的情况下,scikit-learn可以解决大部分问题。对算法不精通的用户在执行建模任务时,并不需要自行编写所有算法,只需要简单地调用scikit-learn库里的模块就可以了。6. IPython
IPython是Python科学计算标准工具集的组成部分,它为交互式和探索式计算提供了一个高效的开发环境。它是一个增强的Pythonshell,目的是提高编写、测试、调试Python代码的速度,主要用于交互式数据处理和利用Matplotlib对数据进行可视化处理。除了标准的基本终端的Pythonshell外,该项目还提供了如下功能。
■ 一个类似于Mathematica的数据分析型软件,具有Notebook编辑窗口,即通过Web浏览器连接IPython。
■ 一个基于Qt框架的GUI控制台,其中含有绘图、多行编辑和语法高亮显示等功能。
■ 用于交互式并行和分布式计算的基本框架。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。