当前位置: 首页 > 科技观察

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

时间:2023-03-16 23:15:55 科技观察

本文转载请联系大数据DT公众号。我们都关注如何利用已有的库来避免重复工作,让程序开发事半功倍。通常,开发大量的原始代码是一项费时费力的工作。为了避免这种情况,我们会尽可能多地使用库中的类来创建对象,通常只需要一行代码。因此,库可以帮助我们用少量的代码完成重要的任务。本文介绍数据科学中经常使用的各种Python标准库、数据科学库和第三方库。01Python标准库16/29Python标准库提供了丰富的功能,包括文本/二进制数据处理、数学运算、函数式编程、文件/目录访问、数据持久化、数据压缩/归档、加密、操作系统服务、并发编程、进程间通信、网络协议、JSON/XML/其他互联网数据格式、多媒体、国际化、GUI、调试、分析等。下面列出了部分Python标准库模块。集合:基于列表、元组、字典和集合的增强数据结构。csv:处理具有逗号分隔值的文件。datetime,time:日期和时间操作。decimal:定点或浮点运算,包括货币计算。doctest:简单的单元测试,带有验证测试或嵌入文档字符串中的预期结果。json:处理Web服务和NoSQL文档数据库的JSON(JavaScript对象表示法)数据。数学:常用数学常数和运算。os:与操作系统交互。队列:先进先出的数据结构。random:伪随机数运算。re:模式匹配的正则表达式。sqlite3:SQLite关系数据库访问。statistics:数理统计函数,例如均值、中位数、众数和方差。字符串:字符串操作。sys:—命令行参数处理,例如标准输入流、输出流和错误流。timeit:性能分析。Python拥有一个庞大且仍在快速增长的开源社区,该社区由来自许多不同领域的开发人员组成。社区中丰富的开源库是Python流行的最重要原因之一。仅用几行Python代码就可以完成如此??多的任务,这真是令人惊讶。下面列出了一些流行的数据科学库。02科学计算与统计3/29NumPy(NumericalPython):Python没有内置的数组数据结构。它提供的列表类型使用起来更方便,但处理速度较慢。NumPy提供了一个高性能的ndarray数据结构来表示列表和矩阵,同时也提供了操作这些数据结构的操作。详细教程请点击??高能量!8段代码演示Numpy数据运算的神奇之处SciPy(ScientificPython):SciPy是在NumPy的基础上开发的,增加了积分、微分方程、附加矩阵处理等科学处理程序。scipy.org管理SciPy和NumPy。详细教程请点击??3个极简代码带你入门Python科学计算库SciPyStatsModels:为统计模型评估、统计测试和统计数据研究提供支持。03数据处理与分析1/29pandas:一个非常流行的数据处理库。pandas充分利用了NumPy的ndarray类型,它的两个关键数据结构是Series(一维)和DataFrame(二维)。详细教程请戳??Pandas最详细的教程在这里!04可视化2/29Matplotlib:高度可定制的可视化和绘图库。Matplotlib可以绘制规则图、散点图、直方图、等高线图、饼图、向量场图、网格图、极坐标图、3D图,并添加文字说明等,详细教程请点击??Python实操:教你用Matplotlib绘制数据Seaborn:一个基于Matplotlib的更高级的可视化库。与Matplotlib相比,Seaborn改进了外观,增加了可视化方法,并且可以使用更少的代码来创建可视化。05机器学习、深度学习和强化学习4/29scikit-learn:一流的机器学习库。机器学习是人工智能的一个子集,深度学习是机器学习的一个子集,侧重于神经网络。Keras:最容易使用的深度学习库之一。Keras在TensorFlow(谷歌)、CNTK(微软的深度学习认知工具包)或Theano(蒙特利尔大学)之上运行。TensorFlow:由谷歌开发,是使用最广泛的深度学习库。TensorFlow与GPU(图形处理单元)或Google的定制TPU(张量处理单元)配合使用效果最佳。TensorFlow在人工智能和大数据分析中有着非常重要的地位,因为人工智能和大数据对数据处理有着巨大的需求。本书使用TensorFlow内置的Keras版本。详细教程请戳??什么是TensorFlow?如何使用它?终于有人解释清楚了OpenAIGym:一个用于开发、测试和比较强化学习算法的库和开发环境。06NaturalLanguageProcessing3/29NLTK(NaturalLanguageToolkit):用于完成自然语言处理(NLP)任务。TextBlob:一个基于NLTK和PatternNLP库构建的面向对象的NLP文本处理库,可简化许多NLP任务。Gensim:功能上类似于NLTK。通常用于为文档集合建立索引,然后确定另一个文档与索引中每个文档的相似程度。关于作者:PaulDeitel,Deitel&Associates的首席执行官兼首席技术官,毕业于麻省理工学院,拥有38年的计算经验。Paul是世界上最有经验的编程语言培训师之一,自1992年以来一直为软件开发人员教授专业课程。他服务过的国际客户包括Cisco、IBM、Siemens、Oracle、Dell、Fidelity、NASAKennedySpaceCenter等。本文节选自《Python程序设计:人工智能案例实践》,经发布者授权发布。