绝不能错过的24个Python库

Python有以下三个特点:

  • 易用性和灵活性
  • 全行业高接受度:Python无疑是业界最流行的数据科学语言
  • 用于数据科学的Python库的数量优势

事实上,由于Python库种类很多,要跟上其发展速度非常困难。因此,本文介绍了24种涵盖端到端数据科学生命周期的Python库。

文中提及了用于数据清理、数据操作、可视化、构建模型甚至模型部署(以及其他用途)的库。这是一个相当全面的列表,有助于你使用Python开启数据科学之旅。

Python

用于数据收集的Python库

你是否曾遇到过这样的情况:缺少解决问题的数据?这是数据科学中一个永恒的问题。这也是为什么学习提取和收集数据对数据科学家来说是一项非常重要的技能。数据提取和收集开辟了前所未有的道路。

以下是三个用于提取和收集数据的Python库:

1. Beautiful Soup

传送门:https://www.crummy.com/software/BeautifulSoup/bs4/doc/

收集数据的最佳方式之一就是抓取网站(当然是以合乎道德和法律的手段!)徒手做这件事需要耗费大量的劳动和时间。Beautiful Soup无疑是一大救星。

Beautiful Soup是一个HTML和XML解析器,可为被解析的页面创建解析树,从而用于从web页面中提取数据。从网页中提取数据的过程称为网页抓取。

使用以下代码可安装BeautifulSoup:

pip install beautifulsoup4 

下面是一个可实现从HTML中提取所有锚标记的Beautiful Soup简单代码:

#!/usr/bin/python3
#Anchor extraction from html document from bs4 
import BeautifulSoup from urllib.request 
import urlopen  
with urlopen('LINK') as response: soup 	
BeautifulSoup(response, 'html.parser')     
for anchor in soup.find_all('a'):
    print(anchor.get('href','/'))

建议阅读下面的文章,学习如何在Python中使用Beautiful Soup:

《新手指南:在Python中使用BeautifulSoup进行网页抓取》传送门:

https://www.analyticsvidhya.com/blog/2015/10/beginner-guide-web-scraping-beautiful-soup-python/

2. Scrapy

传送门:https://docs.scrapy.org/en/latest/intro/tutorial.html

Scrapy是另一个可有效用于网页抓取的Python库。它是一个开源的协作框架,用于从网站中提取所需数据。使用起来快捷简单。

下面是用于安装Scrapy的代码:

pip install scrapy 

Scrapy是一个用于大规模网页抓取的框架。可提供所有需要的工具有效地从网站中抓取数据,且依需要处理数据,并以使用者偏好的结构和格式存储数据。

下面是一个实现Scrapy的简单代码:

 
 
 
   
   
   
   
  1. import scrapy 
  2.  
  3. class Spider(scrapy.Spider): 
  4.     name = 'NAME' 
  5.     start_urls = ['LINK'] 
  6.  
  7.     def parse(self, response): 
  8.         for title in response.css('.post-header>h2'): 
  9.             yield {'title': title.css('a ::text').get()} 
  10.  
  11.         for next_page in response.css('a.next-posts-link'): 
  12.             yield response.follow(next_page, self.parse 

下面是一个学习Scrapy并在Python中实现Scrapy的绝佳教程:

《使用Scrapy在Python中进行网页抓取(含多个示例)》传送门:

https://www.analyticsvidhya.com/blog/2017/07/web-scraping-in-python-using-scrapy/

3. Selenium

传送门:https://www.seleniumhq.org/

Selenium是一个倍受欢迎的自动化浏览器工具。在业界常用于测试,但对于网页抓取也非常方便。Selenium在IT领域非常流行。

编写Python脚本来自动化使用Selenium的web浏览器是很容易的。它允许免费高效地提取数据,并将其存储在首选格式中以备后用。

关于使用Python和Selenium抓取YouTube视频数据的文章:

《数据科学项目:使用Python和Selenium抓取YouTube数据对视频进行分类》传送门:

https://www.analyticsvidhya.com/blog/2019/05/scraping-classifying-youtube-video-data-python-selenium/

用于数据清理和数据操作的Python库

收集了数据之后,接下来要清理可能面临的任何混乱数据,并学习如何操作数据,方便数据为建模做好准备。

下面是四个可用于数据清理和数据操作的Python库。请记住,文中仅指明在现实世界中处理结构化(数值)数据和文本数据(非结构化)——而该库列表涵盖了所有内容。

4. Pandas

传送门:https://pandas.pydata.org/pandas-docs/stable/

在数据操作和数据分析方面,Pandas绝无敌手。Pandas一度是最流行的Python库。Pandas是用Python语言编写的,主要用于数据操作和数据分析。

这个名称来源于术语“面板数据”,“面板数据”是一个计量经济学术语,指的是包含同一个人在多个时间段内的观察结果的数据集。

Pandas在Python or Anaconda中已完成预安装,但以防需要,安装代码如下:

pip install pandas

Pandas有以下特点:

  • 数据集连接和合并
  • 删除和插入数据结构列
  • 数据过滤
  • 重塑数据集
  • 使用DataFrame对象来操作数据等

下面是一篇文章以及一份很棒的Cheatsheet,有助于使Pandas技能达标:

你可能感兴趣的:(python)