盘点数据科学流行的29个Python库

开发 后端
Python标准库提供了丰富的功能,包括文本/二进制数据处理、数学运算、函数式编程、文件/目录访问、数据持久化、数据压缩/归档、加密、操作系统服务、并发编程、进程间通信、网络协议、JSON / XML /其他Internet数据格式、多媒体、国际化、GUI、调试、分析等。

本文转载自微信公众号「大数据DT」,作者保罗·戴特尔。转载本文请联系大数据DT公众号。

我们都着眼于如何使用现有的库来避免重复工作,从而使程序开发工作事半功倍。通常,开发大量原始代码是一个费时费力的工作,为了避免这种情况,我们会尽可能多地使用库中已有的类来创建对象,通常仅需要一行代码。因此,库能够帮助我们使用适量的代码执行重要的任务。

本文介绍数据科学中会经常使用多种Python标准库、数据科学库和第三方库。

01 Python标准库

16 / 29

Python标准库提供了丰富的功能,包括文本/二进制数据处理、数学运算、函数式编程、文件/目录访问、数据持久化、数据压缩/归档、加密、操作系统服务、并发编程、进程间通信、网络协议、JSON / XML /其他Internet数据格式、多媒体、国际化、GUI、调试、分析等。下面列出了一部分Python标准库模块。

  • collections:建立在列表、元组、字典和集合基础上的加强版数据结构。
  • csv:处理用逗号分隔值的文件。
  • datetime, time:日期和时间操作。
  • decimal:定点或浮点运算,包括货币计算。
  • doctest:通过验证测试或嵌入在docstring中的预期结果进行简单的单元测试。
  • json:处理用于Web服务和NoSQL文档数据库的JSON(JavaScript Object Notation)数据。
  • math:常见的数学常量和运算。
  • os:与操作系统进行交互。
  • queue:一种先进先出的数据结构。
  • random:伪随机数操作。
  • re:用于模式匹配的正则表达式。
  • sqlite3:SQLite关系数据库访问。
  • statistics:数理统计函数,如均值、中值、众数和方差等。
  • string:字符串操作。
  • sys:—命令行参数处理,如标准输入流、输出流和错误流。
  • timeit:性能分析。

Python拥有一个庞大且仍在快速增长的开源社区,社区中的开发者来自许多不同的领域。该社区中有大量的开源库是Python受欢迎的最重要的原因之一。

许多任务只需要几行Python代码就可以完成,这会令人感到很神奇。下面列出了一些流行的数据科学库。

[[401795]]

02 科学计算与统计

3 / 29

  1. NumPy(Numerical Python):Python没有内置的数组数据结构。它提供的列表类型虽然使用起来更方便,但是处理速度较慢。NumPy提供了高性能的ndarray数据结构来表示列表和矩阵,同时还提供了处理这些数据结构的操作。详细教程请戳??高能!8段代码演示Numpy数据运算的神操作
  2. SciPy(Scientific Python):SciPy基于NumPy开发,增加了用于科学处理的程序,例如积分、微分方程、额外的矩阵处理等。scipy.org负责管理SciPy和NumPy。详细教程请戳??3段极简代码带你入门Python科学计算库SciPy
  3. StatsModels:为统计模型评估、统计测试和统计数据研究提供支持。

03 数据处理与分析

1 / 29

pandas:一个非常流行的数据处理库。pandas充分利用了NumPy的ndarray类型,它的两个关键数据结构是Series(一维)和DataFrame(二维)。详细教程请戳??Pandas最详细教程来了!

[[401796]]

04 可视化

2 / 29

  • Matplotlib:可高度定制的可视化和绘图库。Matplotlib可以绘制正规图、散点图、柱状图、等高线图、饼图、矢量场图、网格图、极坐标图、3D图以及添加文字说明等。详细教程请戳??Python实操:手把手教你用Matplotlib把数据画出来
  • Seaborn:基于Matplotlib构建的更高级别的可视化库。与Matplotlib相比,Seaborn改进了外观,增加了可视化的方法,并且可以使用更少的代码创建可视化。

[[401797]]

05 机器学习、深度学习和强化学习

4 / 29

  • scikit-learn:一个顶级的机器学习库。机器学习是AI的一个子集,深度学习则是机器学习的一个子集,专注于神经网络。
  • Keras:最易于使用的深度学习库之一。Keras运行在TensorFlow(谷歌)、CNTK(微软的深度学习认知工具包)或Theano(蒙特利尔大学)之上。
  • TensorFlow:由谷歌开发,是使用最广泛的深度学习库。TensorFlow与GPU(图形处理单元)或谷歌的定制TPU(Tensor处理单元)配合使用可以获得最佳的性能。TensorFlow在人工智能和大数据分析中有非常重要的地位,因为人工智能和大数据对数据处理的需求非常巨大。本书使用TensorFlow内置的Keras版本。详细教程请戳??TensorFlow是什么?怎么用?终于有人讲明白了
  • OpenAI Gym:用于开发、测试和比较强化学习算法的库和开发环境。

[[401798]]

06 自然语言处理

3 / 29

  • NLTK(Natural Language Toolkit):用于完成自然语言处理(NLP)任务。
  • TextBlob:一个面向对象的NLP文本处理库,基于NLTK和模式NLP库构建,简化了许多NLP任务。
  • Gensim:功能与NLTK类似。通常用于为文档合集构建索引,然后确定另一个文档与索引中每个文档的相似程度。

关于作者:保罗·戴特尔,Deitel&Associates公司首席执行官兼首席技术官,毕业于麻省理工学院,拥有38年的计算经验。保罗是世界上最有经验的编程语言培训师之一,自1992年以来一直针对软件开发人员教授专业课程。他服务过的国际客户包括思科、IBM、西门子、Oracle、戴尔、富达、美国国家航空航天局肯尼迪航天中心等。

 

本文摘编自《Python程序设计:人工智能案例实践》,经出版方授权发布。

 

责任编辑:武晓燕 来源: 大数据DT
相关推荐

2017-05-22 09:48:04

数据科学Python深度学习

2017-05-19 14:31:41

Python数据

2019-11-05 10:07:26

数据科学Python

2019-11-01 13:37:53

Python数据结构编程语言

2024-07-22 10:15:08

2018-06-27 10:45:12

数据Python程序

2022-03-15 20:25:32

数据治理大数据

2020-05-15 10:22:07

Python开发工具

2022-09-01 23:17:07

Python编程语言开发

2018-08-06 13:46:07

编程语言Python数据科学库

2018-12-10 19:30:45

2023-10-17 18:07:36

2022-08-26 14:41:47

Python数据科学开源

2012-12-21 09:46:28

数据库大数据市场甲骨文

2012-12-24 10:55:32

数据库大数据市场争夺微软大数据

2021-09-22 12:45:47

Python数据分析

2021-01-28 23:35:37

Python开发数据

2019-03-19 09:00:14

Python 开发编程语言

2021-12-02 09:36:23

大数据工具数据分析

2021-12-01 23:16:44

工具数据处理
点赞
收藏

51CTO技术栈公众号