作者 | 刘早起早起

责编 | 屠敏

本文对Python中在数据分析中需要掌握的库进行了整理,一起来看看吧!

目录

  • 数据获取

    • Selenium

    • Scrapy

    • Beautiful Soup

  • 数据清洗

    • Spacy

    • NumPy

    • Pandas

  • 数据可视化

    • Matplotlib

    • Pyecharts

  • 数据建模

    • Scikit-learn

    • PyTorch

    • TensorFlow

  • 模型检查

    • Lime

  • 音频数据处理

    • Librosa

  • 图像数据处理

    • OpenCV-Python

    • Scikit-image

  • 数据通信

    • Pymongo

  • 数据分析结果web部署

    • Flask

    • Django

数据获取

Selenium

Selenium是一个Web测试自动化框架,最初是为软件测试人员创建的。它提供了Web驱动程序API,供浏览器与用户操作交互并返回响应。它运行时会直接实例化出一个浏览器,完全模拟用户的操作,比如点击链接、输入表单,点击按钮提交等。所以我们使用它可以很方便的来登录网站和爬取数据。

可以使用 brew install selenium 的方式来快速安装selenium。

数据获取

Scrapy

Scrapy是Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。其吸引人的地方在于任何人都可以根据需求方便的修改。它也提供了多种类型爬虫的基类,如BaseSpider、sitemap爬虫等,最新版本又提供了web2.0爬虫的支持。我们可以启用选择器(例如XPath,CSS)从网页中提取数据。

我们需要先安装Twisted,因为直接安装scrapy的话,安装会失败。所以使用 pip install Twisted-18.9.0-cp37-cp37m-win32.whl 来安装,然后使用pip install scrapy 来安装scrapy就可以了

数据获取

Beautiful Soup

Beautiful Soup也是一个从网站爬取数据的库,他提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。

可以使用 brew install beautifulsoup4 的方式来快速安装bf4。

数据清洗

Spacy

spacy可以用于进行分词,命名实体识别,词性识别等等,最核心的数据结构是Doc和Vocab。Doc对象包含Token的序列和Token的注释,Vocab对象是spaCy使用的词汇表,用于存储语言中共享的数据,spaCy通过集中存储字符串,单词向量和词汇属性等,避免存储数据的多个副本。

数据清洗

NumPy

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。对数组执行数学运算和逻辑运算时,NumPy 是非常有用的。在用 Python 对 n 维数组和矩阵进行运算时,NumPy 提供了大量有用特征。

数据清洗

Pandas

pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。

数据可视化

Matplotlib

matplotlib是受MATLAB的启发构建的。MATLAB是数据绘图领域广泛使用的语言和工具。MATLAB语言是面向过程的。利用函数的调用,MATLAB中可以轻松的利用一行命令来绘制,然后再用一系列的函数调整结果。它有一套完全仿照MATLAB的函数形式的绘图接口,在matplotlib.pyplot模块中。这套函数接口方便MATLAB用户过度到matplotlib。

数据可视化

Pyecharts

Echarts 是一个由百度开源的数据可视化工具,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可,当 Python 遇到了 Echarts,就变成了 PyEcharts,目的就是为了与 Python 进行对接,方便在 Python 中直接使用数据生成图。

数据建模

Scikit-learn

scikit-learn包含众多顶级机器学习算法,主要有六大基本功能,分别是分类、回归、聚类、数据降维、模型选择和数据预处理。scikit-learn拥有非常活跃的用户社区,基本上其所有的功能都有非常详尽的文档供用户查阅。可以研读scikit-learn的用户指南及文档,对其算法的使用有更充分的了解。

数据建模

Pytorch

PyTorch是美国互联网巨头Facebook在深度学习框架Torch的基础上使用Python重写的一个全新的深度学习框架,它更像NumPy的替代产物,不仅继承了NumPy的众多优点,还支持GPUs计算,在计算效率上要比NumPy有更明显的优势;不仅如此,PyTorch还有许多高级功能,比如拥有丰富的API,可以快速完成深度神经网络模型的搭建和训练。

数据建模

Tensorflow

TensorFlow是一个采用数据流图(data flow graphs),用于数值计算、机器学习、神经网络的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或GPU),服务器,移动设备等等。

模型检查

Lime

LIME能够解释所有我们可以获得预测概率的模型(在R中,也就是每一个与预测(type=“prob”)一起工作的模型)。它利用了这样一个事实,即线性模型很容易解释,因为它们基于特征和类标签之间的线性关系:将复模型函数用局部拟合线性模型逼近原训练集的排列。

音频数据处理

Librosa

librosa是一个非常强大的python语音信号处理的第三方库,用于音频、音乐分析、处理和些常见的时频处理、特征提取、绘制声音图形等功能应有尽有,功能十分强大。学会librosa后再也不用用python去实现那些复杂的算法了,只需要一句语句就能轻松实现。

图像数据处理

OpenCV

OpenCV是计算机视觉领域应用最广泛的开源工具包,基于C/C++,支持Linux/Windows/MacOS/Android/iOS,并提供了Python,Matlab和Java等语言的接口,因为其丰富的接口,优秀的性能和商业友好的使用许可,不管是学术界还是业界中都非常受欢迎。

可以在 anaconda 中来安装OpenCV

图像数据处理

Scikit-imag

scikit-image 是一种开源的用于图像处理的 Python 包。它包括分割,几何变换,色彩操作,分析,过滤等算法。它用作集成到python运算环境结合一些科学运算库(Numpy,Scipy)

安装sudo apt-get install python-skimage

源码 git clone https://github.com/scikit-image/scikit-image.git

数据库相关

Pymongo

MongoDB是由C++语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似JSON对象,它的字段值可以包含其他文档、数组及文档数组,非常灵活。而要使用python进行操作就需要pymongo。

安装pip3 install pymongo

连接client = pymongo.MongoClient(host='localhost', port='ip')

数据分析结果可视化部署

Flask

Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活、轻便、安全且容易上手。另外,Flask还有很强的定制性,用户可以根据自己的需求来添加相应的功能,在保持核心功能简单的同时实现功能的丰富与扩展,其强大的插件库可以让用户实现个性化的网站定制,开发出功能强大的网站。

数据分析结果可视化部署

Django

Django是高水准的Python编程语言驱动的一个开源模型.视图,控制器风格的Web应用程序框架,它起源于开源社区。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。另外,在Django框架中,还包含许多功能强大的第三方插件,使得Django具有较强的可扩展性。

安装pip install Django

文档 https://docs.djangoproject.com/en/3.0/

推荐阅读 

☞GitHub 移动端正式发布!

☞GitHub 标星 11000+,阿里开源的微服务组件如何连续 10 年扛住双十一大促?

☞检测、量化、追踪新冠病毒,基于深度学习的自动CT图像分析有多靠谱?

☞深度学习“三巨头”、图灵奖得主 Yann LeCun:我没有天赋,所以才追随聪明人

☞Docker 开发环境的滑坡

☞来,让我们逐一澄清以太坊 2.0 五大误解

你点的每一个在看,我认真当成了喜欢

数据工程师需要掌握的 18 个 Python 库相关推荐

  1. 数据工程师需要掌握的18个python库

    本文对python中在数据分析中需要掌握的库进行了整理,一起来看看吧! 目录 数据获取 Selenium Scrapy Beautiful Soup 数据清洗 Spacy NumPy Pandas 数 ...

  2. 常用构建数据科学应用程序的七个Python库

    当我开始学习数据科学的旅程时,这些都是我脑海中一直存在的问题.我学数据科学的目的不仅仅是为了开发模型或清理数据,我想制作人们可以使用的应用程序,我正在寻找一种快速的方法来制作MVP(最小可行产品)来测 ...

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

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

  4. 提高数据科学工作效率的 8 个Python库!

    来源丨数据STUDIO 在进行数据科学时,可能会浪费大量时间编码并等待计算机运行某些东西.所以我选择了一些 Python 库,可以帮助你节省宝贵的时间. 1.Optuna Optuna 是一个开源的超 ...

  5. 从青铜到王者,进阶数据可视化 2.0 的五个 Python 库

    作者:A九离 https://blog.csdn.net/weixin_44138053/article/details/88597036 数据可视化的工具和程序库已经极大丰盛,当你习惯其中一种或数种 ...

  6. 从青铜到王者,进阶数据可视化2.0的五个Python库

    数据可视化的工具和程序库已经极大丰盛,当你习惯其中一种或数种时,你会干得很出色,但是如果你因此而沾沾自喜,就会错失从青铜到王者的新工具和程序库.如果你仍然坚持使用Matplotlib(这太神奇了),S ...

  7. 做大数据用java还是python_新手零基础学做大数据工程师,编程学Java还是Python比较好?...

    Python和Java,是大数据行业最常见的两种编程语言,对于想转行大数据的人人来说,学习哪个语言是比较好的选择呢? Python Python和大数据: Python本身的特点是高效率的开发和简单的 ...

  8. 独家 | 一份数据工程师必备的学习资源,干货满满(附链接)

    作者:PRANAV DAR 翻译:张玲 校对:车前子 本文约6500字,建议阅读15分钟. 本文首先详细介绍了数据工程的职责.与数据科学家之间的差别以及其不同的工作角色,然后重点列出了很多与核心技能相 ...

  9. 必备 | 人工智能和数据科学的七大 Python 库

    来源:新智元 本文约3100字,建议阅读10+分钟. 本文汇总了2018年针对数据科学家/AI的最佳库.repos.包和工具. [ 导读 ]作者根据每周发布总结的系列文章,汇总了2018年针对数据科学 ...

最新文章

  1. MySQL增量订阅消费组件Canal POC
  2. 【转】 浏览器分析模拟登陆过程
  3. ThinkPHP 中M方法和D方法的具体区别
  4. 用select 语句中的START WITH...CONNECT BY PRIOR子句实现递归查询
  5. ITK:多路输出不同的类型
  6. 向anna学习系统结构和测试流程
  7. 在架设网站服务器时,实习实习报告网站服务器架设.doc
  8. 记录工作中遇到的问题
  9. 微软Build 2016前瞻:让开发者编写能畅行所有设备的app
  10. Prism6下的MEF:添加Logger
  11. jupyterLab+R,让你更优雅的探索数据
  12. mysqlL时间戳和时间的获取/相互转换/格式化
  13. windows下python调用C/C++以及使用C扩展python python通过pythonnet调用C# dll
  14. SpringBoot整合activiti7,demo示例
  15. ESP8266 wifi模块代码详解
  16. Mac 用命令行彻底卸载VMware Fusion
  17. 超实用的 Python 技巧,异步操作数据库!
  18. 【环境保护网】-环保设备_环保设备网_环保产品网_中国环境保护网
  19. 德国GMX Email免费邮箱服务65GB超大邮件存储空间
  20. NOIP200703守望者的逃离

热门文章

  1. 找工作,改简历,投递装订——累就一个字啊!
  2. [framework] debuging
  3. 计算机教学软件cai,计算机毕业论文cai教学软件中数据的分割
  4. 【演化计算】【论文研读】Completely Automated CNN Architecture Design Based on Blocks
  5. os,shutil操作——批量修改文件名,移动文件,读取文件
  6. pytorch分布式报错 “tensor must be non-overlapping and dense“
  7. html5播放器占用带宽情况,分享|用 bmon 查看网络带宽使用情况
  8. python中line.split_Python splitlines()方法
  9. 《推荐系统笔记(三)》Adaboost算法 —— 弱分类器组合成强分类器的方法
  10. 编译过程、静态库和动态库