Python是一种很棒的编程语言。事实上,它还是世界上发展最快的编程语言之一。它一次又一次证明了它在数据科学职位中的实用性。整个Python及其库的生态系统使其成为全世界用户(初学者和高级)的合适选择。

在本文中,我们将介绍一些用于数据科学方面的Python库,它们并不像pandas、scikit-learn 和 matplotlib那么知名,但一样非常实用的库。

1、Wget

提取数据,尤其是从网络上提取数据,是数据科学家的主要任务之一。Wget是一个免费的实用程序,用于从Web上进行非交互式文件下载。它支持HTTP,HTTPS和FTP协议,以及通过HTTP代理进行检索。由于它是非交互式的,即使用户没有登录也可以在后台运行。因此,如果你需要下载一个网站或页面中的所有图片时,wget 就可以帮到你

安装:

$ pip install wget

示例:

 

2、Pendulum

如果你还在苦恼Python中时间日期的处理,那么你需要Pendulum。它是一个Python包,用于简化datetime操作。它是Python原生类的一个临时替代。

安装:

$ pip install pendulum

例子:

 

3、Imbalanced-learn

大多数分类算法在每个类的样本数量几乎都是一样的情况下是最有效的,但实际工作中大多数是不平衡的数据集,这些数据集对机器学习算法的学习阶段和后续预测都可能有影响。幸运的是,创imbalance -learn库可以解决这个问题。它与scikit-learn兼容,是scikit- learning -contrib项目的一部分。下次遇到不平衡的数据集的情况,请别忘了它。

安装:

 

4、FlashText

在自然语言处理(NLP)任务中清理文本数据通常需要替换关键字或从句子中提取关键字。通常,这样的操作可以用正则表达式来完成,但是如果要搜索的词汇量达到数千,那么这些操作就会变得很繁琐。

Python的FlashText模块基于FlashText算法,为这种情况提供了合适的替代方案。FlashText最棒的地方是,它的运行与你的搜索量无关。

安装:

$ pip install flashtext

例子:

1)提取关键词

 

2)替代关键词

 

5、FuzzyWuzzy

这个名称听起来很奇怪,但是在字符串匹配方面,FuzzyWuzzy是一个非常有用的库。它可以方便地实现字符串匹配率等操作。它还可以方便地匹配保存在不同数据库中的记录。

安装:

$ pip install fuzzywuzzy

例子:

 

6、PyFlux

时间序列分析是机器学习中最常见的问题之一。PyFlux是Python中的一个开源库,它是为处理时间序列问题而构建的。该库拥有一系列很优秀的现代时间序列模型,诸如ARIMA、GARCH和VAR模型等。简而言之,PyFlux提供了一种时间序列建模的概率方法。

安装:

pipinstall pyflux

7、IPyvolume

数据科学很重要的一部分就是交流结果,可视化结果显示可以给你提供一个巨大的优势。IPyvolume是一个Python库,用于可视化Jupyter笔记本中的3D容量和符号(例如3D散点图),只需少量的配置。

安装 :

 

例子:

 

绘制

 

8、Dash

Dash是一个用于构建web应用程序的高效Python框架。它基于FlaskPlotty.js 和 Response.js 之上。将下拉菜单和图形等UI元素与Python分析代码捆绑在一起,而不需要使用JavaScript。Dash非常适合构建可以在web浏览器中呈现的数据可视化应用程序。

安装:

 

例子:

下面的示例显示了具有下拉功能的高度交互式图。当用户在下拉菜单中选择一个值时,应用程序代码将动态地将数据从Google Finance 导出到panda DataFrame。

 

9、Gym

Gym是开发和对比强化学习算法的工具,它兼容任何数据科学库,如TensorFlow或Theano。是一个测试问题的集合,也叫环境,你可以用它来计算强化学习算法。这些环境有一个共享接口,允许用户编写通用算法。

安装:

 

这些Python库真的很“冷”,但是却很强大的更多相关文章

  1. 一文总结数据科学家常用的Python库(下)

    用于建模的Python库 我们已经到达了本文最受期待的部分 - 构建模型!这就是我们大多数人首先进入数据科学领域的原因,不是吗? 让我们通过这三个Python库探索模型构建. Scikit-learn ...

  2. 总结数据科学家常用的Python库

    概述 这篇文章中,我们挑选了24个用于数据科学的Python库. 这些库有着不同的数据科学功能,例如数据收集,数据清理,数据探索,建模等,接下来我们会分类介绍. 您觉得我们还应该包含哪些Python库 ...

  3. 2017年排名前15的数据科学python库

    2017年排名前15的数据科学python库 2017-05-22 Python程序员 Python程序员 Python程序员 微信号 pythonbuluo 功能介绍 最专业的Python社区,有每 ...

  4. 最常用的几个python库--学习引导

    核心库 1.NumPy 当我们用python来处理科学计算任务时,不可避免的要用到来自SciPy  Stack的帮助.SciPy Stack是一个专为python中科学计算而设计的软件包,注意不要将它 ...

  5. 值得推荐的C/C++框架和库 (真的很强大) c

    http://m.blog.csdn.net/mfcing/article/details/49001887 值得推荐的C/C++框架和库 (真的很强大) 发表于2015/10/9 21:13:14 ...

  6. 【转】 值得推荐的C/C++框架和库 (真的很强大)

    [转] 值得推荐的C/C++框架和库 (真的很强大) 值得学习的C语言开源项目 - 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个 ...

  7. 花了三个月终于把所有的 Python 库全部整理了!可以说很全面了

    库名称简介 Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器端构建格式 ...

  8. 11个并不广为人知,但值得了解的Python库

    这是一篇译文,文中提及了一些不常见但是有用的Python库 原文地址:http://blog.yhathq.com/posts/11-python-libraries-you-might-not-kn ...

  9. 盘点 Python 中的那些冷知识(二)

    上一篇文章分享了 Python中的那些冷知识,地址在这里 盘点 Python 中的那些冷知识(一) 今天将接着分享!! 06. 默认参数最好不为可变对象 函数的参数分三种 可变参数 默认参数 关键字参 ...

随机推荐

  1. Python-标准库(常用模块)

    前言: 之所以为不同模块划分重要程度,是因为大家不不可能精力一直集中,也不可能一下掌握所有, 但这个并不表示重要度低的可以不用掌握 ! 你必须掌握的点是每个模块分别干什么事,今后在需要实现某些功能时能 ...

  2. python 通过使用pandas的实现的Excel的批量转换CSV文件的处理

    ---恢复内容开始--- 最近同事在处理文件导入的时候需要把一批文件换成CSV的格式,但是直觉修改后缀是不生效的,而且xlsx和xls的文件没法直接换成CVS的文件,所以找了一下方式,并且自己实现了p ...

  3. Django 全局log process_exception中间件

    class BaseResp: # 基础的返回值类 def __init__(self, code, msg, data): self.code = code self.msg = msg self. ...

  4. Android开发总体布局

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  5. PHP代码篇(三)--常用方法

    模块下不间断更新,PHP常用方法,欢迎留言! 一.递归删除指定目录下所有文件及文件夹 /** * 递归删除指定目录下所有文件及文件夹 * @param unknown $path,删除路径 */ fu ...

  6. SQL server 2012 各个版本比较

    有关不同版本的 SQL Server 2012 所支持的功能的详细信息. 功能名称 Enterprise 商业智能 Standard Web Express with Advanced Service ...

  7. Linux MySQL 开启远程访问

    进入mysql以后 use mysql; GRANT ALL ON *.* TO user@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

  8. 01-Django 简介

    一.MVC框架(模型-视图-控制器缩写,软件的构建模式) 一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需 ...

  9. 多线程状态与优先级、线程同步与Monitor类、死锁

    一.线程状态 二.线程优先级 三.初步尝试多线程 class Program { static void Main(string[] args) { while (true) { MessagePri ...

  10. SpringMVC常用注解(三)

    一.@Controller .@RestController 和 @ControllerAdvice 1. @Controller @Controller 用于标记在一个类上,使用它标记的类就是一个S ...