[译] 数据科学中一些不常用的 Python 库

栏目: Python · 发布时间: 7年前

内容简介:请点击上方“AI公园”,关注公众号编译:ronghuaiyang

请点击上方“AI公园”,关注公众号

作者: Parul Pandey

编译:ronghuaiyang

提到数据科学的 python 包,大家想到的估计是numpy,pandas,scikit-learn之类的,这里给大家介绍一些不常用,但是非常有用的python包,就像是痒痒挠,虽然大部分时间用不上,但是真要用起来,还是挺爽的。

Python是个了不起的语言。事实上,这是世界上发展最快的语言之一(感觉没有之一,就是最快的)。在数据科学领域和开发领域,一次又一次的为我们提供便利。整个Python的生态和库使之成为所有用户都适用(初学者和高级用户)。Python之所以这么成功,原因之一就在于它的库,让Python变得灵活快速。

这篇文章中,我们会看一些不太常用的数据科学的库,除了pandas,scikit-learn,matplotlib等。尽管说到数据科学,我们想到的就是pandas和scikit-learn,了解一下其他的python的库也没什么坏处。下面就是另外一些数据科学中可能会用到的Python库。

Wget

从网络获取数据是Python科学家非常重要的任务。Wget是一个免费的工具,可以从Web上非交互式的下载文件,支持HTTP, HTTPS, 和 FTP协议,同样支持HTTP代理。由于是非交互式的,所以可以后台运行,用户没有登录也可以。所以下次你需要从网上下载图片的时候,可以试试wget。

安装:

$ pip install wget

例子:

import wget
url = 'http://www.futurecrew.com/skaven/song_files/mp3/razorback.mp3'
filename = wget.download(url)
100% [................................................] 3841532 / 3841532
filename
'razorback.mp3'

Pendulum

这个是干啥的呢,你在处理日期时间的时候搞得头大的时候,Pendulum就很适合你,这包是用来简化日期时间的操作的,具体使用可以看 这里 。

安装:

$ pip install pendulum

例子:

import pendulum
dt_toronto = pendulum.datetime(2012, 1, 1, tz='America/Toronto')
dt_vancouver = pendulum.datetime(2012, 1, 1, tz='America/Vancouver')
print(dt_vancouver.diff(dt_toronto).in_hours())
3

imbalanced-learn

大多数的分类问题中,当所有的类别中的样本的数量大致相同时,效果是最好的,也就是样本均衡。但是在实际情况中,往往都是非均衡的数据,这往往会影响训练的过程以及后面的预测。幸好,这个库可以帮我们解决这个问题。这个和scikit-learn兼容,是scikit-learn-contrib的一部分。下次可以试试。

安装:

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

例子:

请参考文档。

FlashText

在清洗NLP相关的数据的时候,往往需要替换一些关键词或者提取一些关键词。通常,可以用正则表达式来干这个活,不过正则条件的数量上千的时候,就会很头大。FlashText是基于FlashText算法的一个模块,提供了这种情况下的一个替代工具,FlashText最好的地方在于运行时间是和搜索的条件的数量不相关的。更多的信息可以看这里。

安装:

$ pip install flashtext

例子:

提取关键词

from flashtext import KeywordProcessor
keyword_processor = KeywordProcessor()
# keyword_processor.add_keyword(<unclean name>, <standardised name>)
keyword_processor.add_keyword('Big Apple', 'New York')
keyword_processor.add_keyword('Bay Area')
keywords_found = keyword_processor.extract_keywords('I love Big Apple and Bay Area.')
keywords_found
['New York', 'Bay Area']

替换关键词

keyword_processor.add_keyword('New Delhi', 'NCR region')
new_sentence = keyword_processor.replace_keywords('I love Big Apple and new delhi.')
new_sentence
'I love New York and NCR region.'

Fuzzywuzzy

名字听起来怪怪的,不过在字符匹配的时候,用起来还是爽爽的。可以轻松的实现字符比例,token比例等。还可以在不同的数据集中进行匹配。

安装:

$ 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

PyFlux

时间序列的处理是机器学习领域经常遇到的问题。PyFlux就是专门用来处理时间序列问题的开源Python库。这个库里有一系列的时间序列模型如 ARIMA, GARCHVAR 等。简单来说,PyFlux提供了时间序列到概率的建模,值的一试。

安装

pip install pyflux

例子

参考这里 。

Ipyvolume

交流结果是数据科学的非常重要的方面。结果可视化是个非常重要的优势。IPyvolume是个3D可视化库,不过这还是在pre-1.0的阶段,可以这样类别一下, IPyvolume是对3维数据的可视化,matplotlib是对二维数据的可视化。具体可以看 这里。

安装

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

例子

  • 标记

[译] 数据科学中一些不常用的 Python 库

  • 渲染

[译] 数据科学中一些不常用的 Python 库

Dash

这是个创建web应用的用户生产的Python框架。基于Flask写的,可以用来构建数据可视化的app,这些app可以在网络浏览器上渲染。用户手册可见 这里.

安装

pip install dash==0.29.0  # The core dash backend
pip install dash-html-components==0.13.2  # HTML components
pip install dash-core-components==0.36.0  # Supercharged components
pip install dash-table==3.1.3  # Interactive DataTable component (new!)

例子

[译] 数据科学中一些不常用的 Python 库

Gym

Gym来自OpenAI,用来做强化学习。兼容所有的数值计算库,如TensorFlow,Theano等。这个库提供了一个问题测试的环境,你可以用这个环境来实验你的强化学习算法。这些环境共享界面,使你可以写通用的算法。

安装

pip install gym

例子

[译] 数据科学中一些不常用的 Python 库

关于其他的环境可以读 这里.

结论

这是我选的一些有用但是不常用的python库,如果你知道其他的话,可以继续添加,别忘了先试试。

本文可以任意转载,转载时请注明作者及原文地址。

[译] 数据科学中一些不常用的 Python 库

请长按或扫描二维码关注我们


以上所述就是小编给大家介绍的《[译] 数据科学中一些不常用的 Python 库》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Game Engine Architecture, Second Edition

Game Engine Architecture, Second Edition

Jason Gregory / A K Peters/CRC Press / 2014-8-15 / USD 69.95

A 2010 CHOICE outstanding academic title, this updated book covers the theory and practice of game engine software development. It explains practical concepts and techniques used by real game studios,......一起来看看 《Game Engine Architecture, Second Edition》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具