python包 wget_Python数据科学“冷门”库

56f44db04d7df67974fe5736f6450afa.png

4e153a3dda3a4022f9c556f95355008f.png
原标题 | Lesser Known Python Libraries for Data Science
作者 | Parul Pandey
译者 | CONFIDANT(福建师范大学)、Seabiscuit、唐里、david95(研发工程师)

Python是一门神奇的语言。事实上,它是世界上发展最快的编程语言之一。它已经一次又一次地证明了它在跨行业的开发人员职位和数据科学职位上的实用性。Python的整个生态系统及其库使其成为全世界用户(初学者和高级用户)的最佳选择。它的成功和流行的原因之一是它的健壮库集的存在,这些库使它能够做到非常动态和快速。

在本文中,我们将研究一些用于数据科学任务的Python库,而不是常用的Python库,如panda、scikit-learn、matplotlib等。虽然像panda和scikit-learn这样的库是机器学习任务的默认名称,但是了解这个领域中的其他 python 应用总是好的。

Wget

抽取数据特别是从网络上爬取数据是数据科学家的一项重要任务。Wget是一个免费的实用的从网上下载文件的非交互式的命令行工具。它支持HTTP,HTTPS和FTP协议,同时也支持通过HTTP代理进行检索。因为它是非交互式的,所以它可以在即使没有登录的情况下也能工作。所以下次你想下载一个网页或者是从网页中下载图片,Wget可以帮助你。

安装:

$ pip install wget

例子:

a15e97a497a0a91f9a5ba90409f003d4.png

Pendulum

对于那些处理日期时间数据而感到沮丧的人来说,Pendulum就是为这些人准备的。这是一个为减轻日期和时间操作设计的Python包。它是Python内置的类的一个替代。需要深入工作可以参考文档:https://pendulum.eustace.io/docs/#installation

安装:

$ pip install pendulum

例子:

8a8231ec6e84b86331269aa1c3168f0c.png

imbalanced-learn

可以看出,大多数分类算法在每个类的样本数量几乎相同的情况下,即平衡状态下,分类效果最好。但现实生活中存在大量的不平衡数据集,这些数据集对机器学习算法的学习阶段和后续预测都有一定的影响。幸运的是,创建这个库是为了解决这个问题。它与scikit-learn兼容,是scikit-learn-contrib项目的一部分。下次遇到不平衡的数据集时,可以尝试一下。

安装:

pip install -U imbalanced-learn
# or
conda install -c conda-forge imbalanced-learn

有关用法和示例,请参考文档:

http://imbalanced-learn.org/en/stable/api.html

FlashText

在NLP任务中清理文本数据通常需要替换句子中的关键字或从句子中提取关键字。通常,这类操作可以使用正则表达式来完成,但是如果要搜索的术语数达到数千,就会变得很麻烦。Python的FlashText模块基于FlashText算法,为这种情况提供了一个合适的替代方案。FlashText最好的地方在于,无论搜索项的数量如何,运行时都是相同的。

安装:

$ pip install flashtext

例子:

提取关键字

4768bfdde07081eeb7d799b88813d7af.png

替换关键字

ef46bffcdac4811d3938f40005c12e08.png

有关更多使用示例,请参考官方文档:

https://flashtext.readthedocs.io/en/latest/#

Fuzzywuzzy

这个名字听起来有点奇怪,但是fuzzywuzzy是一个很有用的用于字符串匹配的库。可以用它轻松的实现例如字符串比较比例、单词比例。它还可以很容易的用于匹配记录,即使他们是在不同的数据库的。

安装:

$ pip install fuzzywuzzy

例子:

from fuzzywuzzy import fuzz
from fuzzywuzzy import process
# Simple Ratio
fuzz.ratio("this is a test", "this is a test!")
97
# Partial Ratio
fuzz.partial_ratio("this is a test", "this is a test!")
 100

更多有趣的例子,可以访问这里:

https://github.com/seatgeek/fuzzywuzzy

PyFlux

时间序列分析是机器学习领域最经常遇到的问题之一。PyFlux就是专门针对时间序列问题设计的一个开源库。这个库有着优秀的时间序列模型,包含ARIMA、GARCH和VAR模型。总之,PyFlux提供了一个基于概率的方法来组织时序模型,很值得一试。

安装:

pip install pyflux

具体试用方法和例子,请参考文档:

https://pyflux.readthedocs.io/en/latest/index.html

Ipyvolume

沟通结果是数据科学的一个重要方面。 能够将结果可视化是一个显著的优势。Ipyvolume是一个Python库,用于在Jupyter笔记本中可视化3d体积和字形(例如3d散点图),并且配置和工作量的需求很少。但是,它目前处于测试阶段。一个很好的比喻:IPyvolume的volshow之于3d数组,就像matplotlib的imshow之于2d数组一样。你可以通过原文了解更多关于它的内容。

安装:

Using pip
$ pip install ipyvolume
Conda/Anaconda
$ conda install -c conda-forge ipyvolume

例子:

  • 动图

83159b09b74fc4f510a9c79a1cc88065.png
  • 体绘图

baa3c7b8e4d5cc77aa2601ca93191b82.gif

Dash

Dash是一个用于构建web应用程序的高效Python框架。它写在Flask上,

Plotly.js和response .js以及下拉菜单、滑块和图形等现代UI元素会绑定到您的分析Python代码中,而不需要javascript。Dash非常适合构建数据可视化应用程序。然后可以在web浏览器中呈现这些应用程序。用户指南可以在这里访问。

安装:

8fb1c698cc182aa1f6d304abdd49c998.png

例子:

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

8658c786e32738e2b1ed38c8e9f070db.gif

Gym

来自OpenAI的Gym是一个开发和比较强化学习算法的工具箱。它兼容任何数值计算库,如TensorFlow或Theano。健身房图书馆必然是一个测试问题的集合,也称为环境——你可以用它来制定你的强化学习算法。这些环境有一个共享接口,允许您编写通用算法。

安装:

pip install gym

例子:

一个将要运行1000个CartPole-v0时间步长环境实例,每一步都会呈现其环境。

448bb58846ca18a5b2428df7b18e5b5f.gif

你可以通过下方链接了解其他环境:

https://gym.openai.com/

结论

这些是我为数据科学选择的有用python库,而不是常见的如numpy、panda等。如果你知道还有哪些可以添加到列表中的,请评论中告知我。

最后,别忘了试一试!

本文编辑:王立鱼

英语原文:https://medium.com/analytics-vidhya/python-libraries-for-data-science-other-than-pandas-and-numpy-95da30568fad

想要继续查看该篇文章相关链接和参考文献?

点击底部python数据科学“冷门”库即可访问:

福利大放送——满满的干货课程免费送!

「好玩的Python:从数据挖掘到深度学习」该课程涵盖了从Python入门到CV、NLP实践等内容,是非常不错的深度学习入门课程,共计9节32课时,总长度约为13个小时。。

课程页面:AI研习社 - 研习AI产学研新知,助力AI学术开发者成长。

「计算机视觉基础入门课程」本课程主要介绍深度学习在计算机视觉方向的算法与应用,涵盖了计算机视觉的历史与整个课程规划、CNN的模型原理与训练技巧、计算机视觉的应用案例等,适合对计算机视觉感兴趣的新人。

课程页面:AI研习社 - 研习AI产学研新知,助力AI学术开发者成长。

现AI研习社将两门课程免费开放给社区认证用户,只要您在认证时在备注框里填写「Python」,待认证通过后,即可获得该课程全部解锁权限。心动不如行动噢~

认证方式:AI研习社 - 研习AI产学研新知,助力AI学术开发者成长。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值