Python科学计算和数据分析库简介
数据处理是科学计算、数据分析以及人工智能的基础,Python在数据表示、数据清理、数据统计、数据可视化拥有众多易用高效的库,广泛用于工程领域、大数据、机器学习、人工智能等领域。如:NumPy为科学计算和数据分析库基础库;Scipy是像matlab一样的科学计算库;Pandas是一个数据分析库;Matplotlib是一个二维可视化绘图库、Seaborn是一个基于Matplotlib的更加易用的二维可
数据表示、数据清理、数据统计、数据可视化等算法库是科学计算、数据分析以及人工智能的基础。
python拥有非常丰富数据科学相关的库,被广泛用于工程领域、数据分析领域以及人工智能领域。主要库有:
Python科学计算和数据分析库
- Numpy:科学计算和数据分析基础库
- Scipy:科学计算工具库
- Pandas:数据分析工具库
- Matplotlib:2D可视化绘图库(新版支持3D绘图)
- Seaborn:易用的2D可视化绘图库(对统计更加友好)
- Mayavi2:可交互3D可视化绘图库
Matplotlib和Seaborn都是静态绘图库,不支持交互式控件。交互式绘图库推荐PyEcharts和PyQtGraph。
- PyEcharts是一个功能强大的基于web的可嵌入网页的交互式绘图库。plotly也不错,但是部分功能收费。
- PyQtGraph是一个基于qt的高性能交互式绘图库,主要用于数学、科学、工程领域。
- Numpy,Pandas,Matplotlib是Python数据分析使用频率最高的库。
- Numpy,Scipy可以代替Matlab的常规矩阵运算、科学计算功能(不含Simulink和专用行业部分)
- Tensorflow、Pytorch等深度学习库和Numpy、Pandas、Matplotlib、Seaborn配合,也能够更加高效的完成工作
Numpy,Scipy,Pandas,Matplotlib,Seaborn,Mayavi2简介
1. Numpy
Numpy(Numeric Python)是高性能科学计算和数据分析的基础库。
Numpy的核心由多维数组对象和用于处理数组的函数组成。Numpy提供了N维数组基础操作,数组的算术和逻辑运算,随机数和随机分布,线性代数,统计,傅里叶变换等内置函数。代码简洁且速度快。
Numpy是几乎所有数据分析高级库(比如scipy,pandas)的构建基础。
2. Scipy
Scipy是基于Numpy的科学计算工具库,方便、易于使用、专为科学和工程设计。
Scipy提供了许多用户友好和高效的高阶方法,如插值,积分,统计,优化,图像处理等等。
Scipy包含Matlab的大多计算功能,和数据处理的关系不大,数值计算或者工程研究应用更多一些。
StatsModels是一个统计库,着重于统计模型。包含了许多的统计模型,线性模型、广义线性模型、
方差分析、和线性混合效用模型等,在统计方面有其独特的优势。可以作为Scipy.stats的补充。
3. Pandas
Pandas(Panel Data)是基于NumPy的数据分析库。 包含许多数据模型。Pandas纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集
所需的方法,并且提供了大量能使我们快速便捷地处理数据的内置函数。
Pandas的核心为三种数据结构和操作:
- Series:带索引的一维数组,与Numpy中的一维array类似。
- DataFrame:带索引的二维的表格型数据结构。
老版本有Panel(三维的数组,DataFrame的容器)数据结构,新版本已经废除。
4. Matplotlib
Matplotlib 是一个2D可视化绘图库。可以使用这个库轻松地完成线形图、直方图、条形图、误差图或散点图等操作,设置标签、图例、调整绘图大小等。
Numpy,Pandas,Matplotlib被称为Python数据分析三大支柱。
5. Seaborn
Seaborn是基于Matplotlib的2D图形可视化工具包。
Seaborn是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,个人认为Seaborn的核心意义在于统计绘图,Seaborn的函数主要分为关系、分布、分类统计等几类,统计绘图更加方便,功能更强,而不是取代matplotlib。
6. Mayavi2
Mayavi2是基于VTK开发的可视化python库(更加高效)。Mayavi2旨在提供方便和互动的三维数据可视化。
Mayavi2无缝集成numpy和3D绘图,可以嵌入到用户编写的Python程序中,并且提供了而向脚本的mlab模块,以方便用户快速绘制三维图,和matplotlib的pylab—样。
持续更新及修订升级中。
未经允许请勿转载。
更多推荐
所有评论(0)