只知道Pandas吗?数据科学家不能错过的24个Python库(上)
前段时间,全世界范围内的Python谷歌搜索指数已经超越了Java(Python王者到来?Python谷歌搜索指数已经超越Java) 。说明Python越来越重要,同时,Python也是数据科学家必不可少的工具。最近,Analytics Vidhya总结了24个数据科学家不能错过的24个Python库,也是很不错的一份list,我们一起来看看。也算是入门同学的一个学习和选择的方向。
这24个库包含在以下几个领域中,本文主要介绍前4种:
- 用于数据收集的Python库
- 用于数据清理和操作的Python库
- 用于数据可视化的Python库
- 用于建模的Python库
数据收集的Python
您是否遇到过一种情况,即您没有足够的数据来解决您想要解决的问题? 这是数据科学中一个永恒的问题。 这就是为什么学习如何提取和收集数据对数据科学家来说是一项非常关键的技能。 它开辟了以前无法实现的途径。
所以这里有三个有用的Python库,用于提取和收集数据。
Beautiful Soup
Beautiful Soup是一个HTML和XML解析器,它为解析的页面创建解析树,用于从网页中提取数据。 也就是主要为爬虫爬到的网页数据进行数据抽取功能。
Scrapy
Scrapy是另一个用于Web抓取的超级有用的Python库。 它是一个开源和协作框架,用于从网站中提取您需要的数据。 它使用起来快速而简单。
Selenium
Selenium是一种用于自动化浏览器的流行工具。 它主要用于行业测试,但对于网络抓取也非常方便。 实际上,Selenium在IT领域变得非常受欢迎。
数据清理和表示的Python库
好吧 - 所以你已经收集了你的数据并准备好继续挖掘。现在是时候清理我们可能面临的任何混乱数据并学习如何操作它,以便我们的数据可以用于建模。
这里有四个Python库可以帮助您实现这一目标。 请记住,我们将处理现实世界中的结构化(数字)和文本数据(非结构化) - 这个库列表涵盖了所有这些。
Pandas
在数据处理和分析方面,没有什么能比Pandas更胜一筹。 它是最流行的Python库。 Pandas是用Python语言编写的,特别适用于操作和分析任务。
该名称来源于术语“面板数据”,这是一个数据集的计量经济学术语,包括对同一个体的多个时间段的观察—— 维基百科
PyOD
在检测异常值时苦苦挣扎? 你不是一个人。 这是有抱负(甚至已建立)数据科学家的常见问题。 你如何定义异常值?
别担心,PyOD库可以帮到您。
PyOD是一个全面且可扩展的Python工具包,用于检测异常对象。 异常检测是识别与大多数数据显着不同的稀有项目或观察值。
NumPy
像Pandas一样,NumPy是另一个非常受欢迎的Python库。 NumPy引入了支持大型多维数组和矩阵的函数。 它还引入了高级数学函数来处理这些数组和矩阵。
Spacy
到目前为止,我们已经讨论了如何清理和操作数值数据。 但是,如果你正在处理文本数据呢?
使用SpaCy。 它是一个超级有用且灵活的自然语言处理(NLP)库和框架,用于清理文本文档以进行模型创建。 与用于类似任务的其他库相比,SpaCy更快。
数据可视化的Python库
下一个是什么? 当然是数据可视化! 这是我们的假设被检查的地方,隐藏的洞察力被挖掘出来并找到模式。
这里有三个用于数据可视化的很棒的Python库。
Matplotlib
Matplotlib是Python中最流行的数据可视化库。 它允许我们生成和构建各种图表。 它可以与Seaborn一起在视觉上探索数据(稍后会详细介绍)。
Seaborn
Seaborn是另一个基于matplotlib的绘图库。 它是一个python库,提供高级界面来绘制有吸引力的图形。 matplotlib可以做什么,Seaborn只是以更具视觉吸引力的方式做到这一点。
Bokeh
Bokeh是一个交互式可视化库,面向现代Web浏览器进行演示。 它为大量数据集提供了多种图形的优雅构造。
Bokeh可用于创建交互式图表,仪表板和数据应用程序。
建立数据挖掘模型的Python库
我们已经到达了本文最受期待的部分 - 构建模型! 这就是我们大多数人首先进入数据科学的原因,不是吗?
让我们通过这三个Python库探索模型构建。
Scikit-Learn
就像用于数据操作的Pandas和用于可视化的matplotlib一样,scikit-learn是构建模型的Python领导者。 没有什么比得上它了。
事实上,scikit-learn建立在NumPy,SciPy和matplotlib之上。 它是开源的,每个人都可以访问,并且可以在各种环境中重用。
TensorFlow
TensorFlow由Google开发,是一个流行的深度学习库,可帮助您构建和训练不同的模型。 它是一个开源的端到端平台。 TensorFlow提供简单的模型构建,强大的机器学习生成,以及强大的实验工具和库。