2018年排名前20的数据科学Python库

Python 在解决数据科学任务和挑战方面继续处于领先地位。业已证明最有帮助的Python库,我们选择 20 多个库,因为其中一些库是相互替代的,可以解决相同的问题。因此,我们将它们放在同一个分组。

核心库和统计数据

1. NumPy (提交:17911,撰稿人:641)

官网:http://www.numpy.org/

NumPy 是科学应用程序库的主要软件包之一,用于处理大型多维数组和矩阵,它大量的高级数学函数集合和实现方法使得这些对象执行操作成为可能。

2. SciPy (提交:19150,撰稿人:608)

官网:https://scipy.org/scipylib/

科学计算的另一个核心库是 SciPy。它基于 NumPy,其功能也因此得到了扩展。SciPy 主数据结构又是一个多维数组,由 Numpy 实现。这个软件包包含了帮助解决线性代数、概率论、积分计算和许多其他任务的工具。此外,SciPy 还封装了许多新的 BLAS 和 LAPACK 函数。

3. Pandas (提交:17144,撰稿人:1165

官网:https://pandas.pydata.org/

Pandas 是一个 Python 库,提供高级的数据结构和各种各样的分析工具。这个软件包的主要特点是能够将相当复杂的数据操作转换为一两个命令。Pandas包含许多用于分组、过滤和组合数据的内置方法,以及时间序列功能。

4. StatsModels (提交:10067,贡献者:153)

官网:http://www.statsmodels.org/devel/

Statsmodels 是一个 Python 模块,它为统计数据分析提供了许多机会,例如统计模型估计、执行统计测试等。在它的帮助下,你可以实现许多机器学习方法并探索不同的绘图可能性。

Python 库不断发展,不断丰富新的机遇。因此,今年出现了时间序列的改进和新的计数模型,即 GeneralizedPoisson、零膨胀模型(zero inflated models)和 NegativeBinomialP,以及新的多元方法:因子分析、多元方差分析以及方差分析中的重复测量。

可视化

5. Matplotlib (提交:25747,撰稿人:725)

官网:https://matplotlib.org/index.html

Matplotlib 是一个用于创建二维图和图形的底层库。藉由它的帮助,你可以构建各种不同的图标,从直方图和散点图到费笛卡尔坐标图。此外,有许多流行的绘图库被设计为与matplotlib结合使用。

6. Seaborn(提交人:2044,撰稿人:83)

官网:https://seaborn.pydata.org/

Seaborn 本质上是一个基于 matplotlib 库的高级 API。它包含更适合处理图表的默认设置。此外,还有丰富的可视化库,包括一些复杂类型,如时间序列、联合分布图(jointplots)和小提琴图(violin diagrams)。

7. Plotly (提交:2906,撰稿人:48)

官网:https://plot.ly/python/

Plotly 是一个流行的库,它可以让你轻松构建复杂的图形。该软件包适用于交互式 Web 应用程,其卓越的可视化效果包括轮廓图形,三元图和3D图表。

8. Bokeh (提交:16983,撰稿人:294)

官网:https://bokeh.pydata.org/en/latest/

Bokeh 库使用 JavaScript 小部件在浏览器中创建交互式和可缩放的可视化。该库提供了多种图表集合,样式可能性(styling possibilities),链接图、添加小部件和定义回调等形式的交互能力,以及许多更有用的特性。

9. Pydot (提交:169,撰稿人:12)

官网:https://pypi.org/project/pydot/

Pydot 是一个用于生成复杂的定向图和无向图的库。它是用纯 Python 编写的Graphviz 接口。在它的帮助下,可以显示图形的结构,这在构建神经网络和基于决策树的算法时经常用到。

机器学习

10. Scikit-learn (提交:22753,撰稿人:1084)

官网:http://scikit-learn.org/stable/

这个基于 NumPy 和 SciPy 的 Python 模块是处理数据的最佳库之一。它为许多标准的机器学习和数据挖掘任务提供算法,如聚类、回归、分类、降维和模型选择。

Data Science School:http://datascience-school.com/

11. XGBoost / LightGBM / CatBoost (提交:3277/1083/1509,撰稿人:280/79/61

官网:

http://xgboost.readthedocs.io/en/latest/http://lightgbm.readthedocs.io/en/latest/Python-Intro.htmlhttps://github.com/catboost/catboost

梯度增强算法是最流行的机器学习算法之一,它是建立一个不断改进的基本模型,即决策树。因此,为了快速、方便地实现这个方法而设计了专门库。就是说,我们认为 XGBoost、LightGBM 和 CatBoost 值得特别关注。它们都是解决常见问题的竞争者,并且使用方式几乎相同。这些库提供了高度优化的、可扩展的、快速的梯度增强实现,这使得它们在数据科学家和 Kaggle 竞争对手中非常流行,因为在这些算法的帮助下赢得了许多比赛。

12. Eli5 (提交:922,撰稿人:6)

官网:https://eli5.readthedocs.io/en/latest/

通常情况下,机器学习模型预测的结果并不完全清楚,这正是 Eli5 帮助应对的挑战。它是一个用于可视化和调试机器学习模型并逐步跟踪算法工作的软件包,为 scikit-learn、XGBoost、LightGBM、lightning 和 sklearn-crfsuite 库提供支持,并为每个库执行不同的任务。

深度学习

13. TensorFlow(提交:33339,撰稿人:1469)

官网:https://www.tensorflow.org/

TensorFlow 是一个流行的深度学习和机器学习框架,由 Google Brain 开发。它提供了使用具有多个数据集的人工神经网络的能力。在最流行的 TensorFlow应用中有目标识别、语音识别等。在常规的 TensorFlow 上也有不同的 leyer-helper,如 tflearn、tf-slim、skflow 等。

14. PyTorch(提交:11306,撰稿人:635)

官网:https://pytorch.org/

PyTorch 是一个大型框架,它允许使用 GPU 加速执行张量计算,创建动态计算图并自动计算梯度。在此之上,PyTorch 为解决与神经网络相关的应用程序提供了丰富的 API。该库基于 Torch,是用 C 实现的开源深度学习库。在Lua中有一个包装器。Python API于2017年推出,从那时起,该框架越来越受欢迎并吸引了越来越多的数据科学家。

15. Keras (提交人:4539,撰稿人:671)

官网:https://keras.io/

Keras 是一个用于处理神经网络的高级库,运行在 TensorFlow、Theano 之上,

现在作为新版本的结果,它也可以使用CNTK和MxNet作为后端。它简化了许多特定任务,并大大减少了单调代码的数量。但是,它可能不适合某些复杂的事情。

该库面临性能,可用性,文档和API改进。一些新功能是Conv3DTranspose 层,新的MobileNet 应用程序和自我规范化网络。

分布式深度学习

16. Dist-keras / elephas / spark-deep-learning(提交:1125/170/67,撰稿人:5/13/11)

官网:

http://joerihermans.com/work/distributed-keras/https://pypi.org/project/elephas/https://databricks.github.io/spark-deep-learning/site/index.html

随着越来越多的用例需要花费大量的精力和时间,深度学习问题变得越来越重要。然而,使用像 Apache Spark 这样的分布式计算系统,处理如此多的数据要容易得多,这再次扩展了深入学习的可能性。因此,dist-keras、elephas 和 spark-deep-learning 都在迅速流行和发展,而且很难挑出一个库,因为它们都是为解决共同的任务而设计的。这些包允许你在 Apache Spark 的帮助下直接训练基于 Keras 库的神经网络。Spark-deep-learning 还提供了使用 Python 神经网络创建管道的工具。

自然语言处理

17. NLTK(提交:13041,撰稿人:236)

官网:https://www.nltk.org/

NLTK 是一组库,一个用于自然语言处理的完整平台。在 NLTK 的帮助下,你可以以各种方式处理和分析文本,对文本进行标记和标记,提取信息等。NLTK 也用于原型设计和建立研究系统。

18. SpaCy (提交:8623,撰稿人:215)

官网:https://spacy.io/

SpaCy 是一个具有优秀示例、API 文档和演示应用程序的自然语言处理库。这个库是用 Cython 语言编写的,Cython 是 Python 的 C 扩展。它支持近 30 种语言,提供了简单的深度学习集成,保证了健壮性和高准确率。SpaCy 的另一个重要特性是专为整个文档处理设计的体系结构,无须将文档分解成短语。

19. Gensim (提交人:3603,撰稿人:273)

官网:https://radimrehurek.com/gensim/

Gensim 是一个用于健壮语义分析、主题建模和向量空间建模的 Python 库,构建在Numpy和Scipy之上。它提供了流行的NLP算法的实现,如 word2vec。尽管 gensim 有自己的 models.wrappers.fasttext实现,但 fasttext 库也可以用来高效学习词语表示。

数据采集

20. Scrapy (提交:6625,撰稿人:281)

官网:https://scrapy.org/

Scrapy 是一个用来创建网络爬虫,扫描网页和收集结构化数据的库。此外,Scrapy 可以从 API 中提取数据。由于该库的可扩展性和可移植性,使得它用起来非常方便。

结论

本文上述所列就是我们在 2018 年为数据科学领域中总结的 Python 库集合。一些新的现代库越来越受欢迎,而那些已经成为经典的数据科学任务的库也在不断改进。

当然仍可能还有一些值得关注的其他伟大而有用的库。因此,请在下面的评论部分分享您的最爱,以及有关我们提到的软件包的任何想法。

感谢您的关注!

下表显示了github活动的详细统计信息。

原文链接:

https://activewizards.com/blog/top-20-python-libraries-for-data-science-in-2018/

原文地址:https://www.cnblogs.com/cjtds/p/9638513.html

时间: 2024-10-09 00:14:55

2018年排名前20的数据科学Python库的相关文章

2016年GitHub排名前20的Python机器学习开源项目(转)

当今时代,开源是创新和技术快速发展的核心.本文来自 KDnuggets 的年度盘点,介绍了 2016 年排名前 20 的 Python 机器学习开源项目,在介绍的同时也会做一些有趣的分析以及谈一谈它们的发展趋势.和去年一样,KDnuggets 介绍了 GitHub 上最新的并且排名前 20 的 Python 机器学习开源项目.令人吃惊的是,去年一些最活跃的项目已经停滞不前了,也有一些项目跌出了前 20 名(在 contribution 和 commit 方面),当然,也有 13 个新项目进入了前

20个必不可少的Python库也是基本的第三方库

今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. Scrapy.如果你从事爬虫相关的工作,那么这个库也是必不可少的.用过它之后你就不会再想用别的同类库了. wxPython.Python的一个GUI(图形用户界面)工具.我主要用它替代tkinter.你一定会爱上它的. Pillow.它是PIL(Python图形库)的一个友好分支.对于用户比PIL

20个必不可少的Python库

转载:http://www.python123.org/tutorials/58b41f2a28c8f30100bd41dc 读者们好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. Scrapy.如果你从事爬虫相关的工作,那么这个库也是必不可少的.用过它之后你就不会再想用别的同类库了. wxPython.Python的一个GUI(图形用户界面

20个必不可少的Python库,了解下!

今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: 1,Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. 2,Scrapy.如果你从事爬虫相关的工作,那么这个库也是必不可少的.用过它之后你就不会再想用别的同类库了. 3,wxPython.Python的一个GUI(图形用户界面)工具.我主要用它替代tkinter.你一定会爱上它的. 4,Pillow.它是PIL(Python图形库)的一个友好分支.

少儿编程崛起?2020年4月编程语言排名发布——Java,C,Python分列前三,Scratch挤进前20

前三并没有什么悬念,依然是Java,C,Python.C与Java的差距正在缩小,不过我们不用担心,在大数据分析领域Java,Python依然都是不可或缺的. 基于图形的基于块的编程语言Scratch已进入前20名.乍一看,对于旨在教孩子如何编程的编程语言来说,这似乎有些奇怪.但是,如果考虑到Scratch开发完成总数超过5,000万个项目,并且每月增加100万个新的Scratch项目,那么不能否认Scratch受欢迎.由于计算机越来越成为生活中不可或缺的一部分,因此教孩子编程的语言越来越受欢迎

20本机器学习与数据科学必读书籍

高校的暑假即将来临,有没有想利用这个暑假为自己充电,为未来的自己赢在起跑线上,成为人工智能界的人生赢家呢?来自 KDnuggets 的 Matthew Mayo 就提供了这份书单,小编在翻译此书单的同时,还贴心搜索了相应的中文译本,并提供了中文版的购买链接.加油吧,骚年! 如果你想了解大数据的学习路线,想学习大数据知识以及需要免费的学习资料可以加群:784789432.欢迎你的加入.每天下午三点开直播分享基础知识,晚上20:00都会开直播给大家分享大数据项目实战. 1. <统计思维:程序员数学之

哪些数据科学技能是雇主所需要的

这是一个好消息,如果你希望在2016年找一份数据科学的工作-在该领域职位空缺的数量正在不断增加,企业希望利用大数据来获得竞争优势.但事实上,找一份梦寐以求的数据科学工作就意味着你要具备一些技能的组合,你可能会惊讶学习哪些技能是雇主所最需要的. 最近,人们在CrowdFlower上针对Linkedin的3490个数据科学职位做了分析,并对最常出现的21个技能进行了排序.有些结果并不那么令人惊讶-SQL排在最前,而其它的结果可能是数据科学领域不断发展的领先指标. 如上所述,SQL是最常见的技能,在L

Kaggle泰坦尼克数据科学解决方案

原文地址如下: https://www.kaggle.com/startupsci/titanic-data-science-solutions 看完一遍,什么也没记住,于是干脆直接翻译一遍. 然鹅,依旧没记住什么. ---------------------------------------------------------------- p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px SimSun } p.p1 { margin:

GitHub 上排名前 100 的 IOS 开源库简介

主要对当前 GitHub 排名前 100 的项目做一个简单的简介, 方便初学者快速了解到当前 Objective-C 在 GitHub 的情况. 项目名称 项目信息 1. AFNetworking 作者是 NSHipster 的博主, iOS 开发界的大神级人物, 毕业于卡内基·梅隆大学, 开源了许多牛逼的项目, 这个便是其中之一, AFNetworking 采用 NSURLConnection + NSOperation, 主要方便与服务端 API 进行数据交换, 操作简单, 功能强大, 现在