欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python常用包及功能介绍

程序员文章站 2023-08-23 11:30:01
内容来自转载整理 1.NumPy数值计算 NumPy是使用Python进行科学计算的基础包,Numpy可以提供数组支持以及相应的高效处理函数,是Python数据分析的基础,也是SciPy、Pandas等数据处理和科学计算库最基本的函数功能库,且其数据类型对Python数据分析十分有用。它包含: 一个 ......

 内容来自转载整理

1.numpy数值计算

 

numpy是使用python进行科学计算的基础包numpy可以提供数组支持以及相应的高效处理函数,是python数据分析的基础,也是scipypandas等数据处理和科学计算库最基本的函数功能库,且其数据类型对python数据分析十分有用。它包含:

一个强大的n维数组对象

复杂的(广播)功能

用于集成c / c ++fortran代码的工具

有用的线性代数,傅里叶变换和随机数功能

 

作用:这种工具可用来存储和处理大型矩阵,比python自身的嵌套列表结构要高效的多。

numpy和稀疏矩阵运算包scipy配合使用更加方便。

 

2.pandas数据处理

pandas python的一个数据分析包,是基于numpy 的一种工具,该工具是为了解决数据分析任务而创建的。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。数据结构如下:

series:一维数组,与numpy中的一维array类似。二者与python基本的数据结构list也很相近。series如今能保存不同种数据类型,字符串、boolean值、数字等都能保存在series中。

time- series:以时间为索引的series

dataframe:二维的表格型数据结构。很多功能与r中的data.frame类似。可以将dataframe理解为series的容器。

panel :三维的数组,可以理解为dataframe的容器。

 

作用:该工具是为了解决数据分析任务而创建的。pandas提供了大量能使我们快速便捷地处理数据的函数和方法pandaspython的一个数据分析包,pandas最初被用作金融数据分析工具而开发出来,因此pandas为时间序列分析提供了很好的支持。pandas是进行数据清晰/整理的最好工具。

 

3.matplotlib数据可视化

matplotlib是强大的数据可视化工具和作图库,是主要用于绘制数据图表的python库,提供了绘制各类可视化图形的命令字库、简单的接口,可以方便用户轻松掌握图形的格式,绘制各类可视化图形。使用matplotlib,可以定制所做图表的任一方面。他支持所有操作系统下不同的gui后端,并且可以将图形输出为常见的矢量图和图形测试,如pdf svg jpg png bmp gif.通过数据绘图,我们可以将枯燥的数字转化成人们容易接收的图表。 matplotlib有一套允许定制各种属性的默认设置,可以控制matplotlib中的每一个默认属性:图像大小、每英寸点数、线宽、色彩和样式、子图、坐标轴、网个属性、文字和文字属性。

 

作用:是基于numpy的一套python包,这个包提供了吩咐的数据绘图工具,主要用于绘制一些统计图形。matplotlibpython的一个可视化模块,他能方便的只做线条图、饼图、柱状图以及其他专业图形。 

 

4.scipy科学计算

scipy是一款方便、易于使用、专为科学和工程设计的python工具包.它包括统计,优化,整合,线性代数模块,傅里叶变换,信号和图像处理,常微分方程求解器等等.

scipy是一组专门解决科学计算中各种标准问题域的包的集合,包含的功能有最优化、线性代数、积分、插值、拟合、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算等,这些对数据分析和挖掘十分有用。

scipy是一款方便、易于使用、专门为科学和工程设计的python包,它包括统计、优化、整合、线性代数模块、傅里叶变换、信号和图像处理、常微分方程求解器等。scipy依赖于numpy,并提供许多对用户友好的和有效的数值例程,如数值积分和优化。

 

5.scrapy爬虫

scrapy是专门为爬虫而生的工具,具有url读取、html解析、存储数据等功能,可以使用twisted异步网络库来处理网络通讯,架构清晰,且包含了各种中间件接口,可以灵活的完成各种需求。

 

6.scikit-learn机器学习

scikit-learnpython常用的机器学习工具包,提供了完善的机器学习工具箱,支持数据预处理、分类、回归、聚类、预测和模型分析等强大机器学习库,其依赖于numpyscipymatplotlib等。

scikit-learn是基于python机器学习的模块,基于bsd开源许可证。

scikit-learn的安装需要numpy scopy matplotlib等模块,scikit-learn的主要功能分为六个部分,分类、回归、聚类、数据降维、模型选择、数据预处理。

scikit-learn自带一些经典的数据集,比如用于分类的irisdigits数据集,还有用于回归分析的boston house prices数据集。该数据集是一种字典结构,数据存储在.data成员中,输出标签存储在.target成员中。scikit-learn建立在scipy之上,提供了一套常用的机器学习算法,通过一个统一的接口来使用,scikit-learn有助于在数据集上实现流行的算法。

scikit-learn还有一些库,比如:用于自然语言处理的nltk、用于网站数据抓取的scrappy、用于网络挖掘的pattern、用于深度学习的theano等。

 

7.keras深度学习

keras是深度学习库,人工神经网络和深度学习模型,基于theano之上,依赖于numpyscipy,利用它可以搭建普通的神经网络和各种深度学习模型,如语言处理、图像识别、自编码器、循环神经网络、递归审计网络、卷积神经网络等。

 

8.statsmodels统计建模计量经济

statsmodelspython的统计建模和计量经济学工具包,包括一些描述统计、统计模型估计和推断。

 

总之,

python有着像matlab一样强大的数值计算工具包numpy

python能直接处理数据,而pandas几乎可以像sql那样对数据进行控制;

有着绘图工具包matplotlib,matplotlib能够对数据和记过进行可视化,快速理解数据;

有着科学计算工具包scipy

scikit-learn提供了机器学习算法的支持,theano提供了升读学习框架(还可以使用cpu加速)。