Dans cet article, nous examinerons certaines bibliothèques Python pour les tâches de science des données autres que les plus courantes comme panda, scikit-learn et matplotlib. Bien que des bibliothèques comme panda et scikit-learn soient couramment utilisées dans les tâches d'apprentissage automatique, il est toujours utile de comprendre d'autres produits Python dans ce domaine.
Extraire des données d'Internet est l'une des tâches importantes d'un data scientist. Wget est un utilitaire gratuit qui peut être utilisé pour télécharger des fichiers non interactifs depuis Internet. Il prend en charge les protocoles HTTP, HTTPS et FTP, ainsi que la récupération de fichiers via le proxy HTTP. Comme il n'est pas interactif, il peut fonctionner en arrière-plan même si l'utilisateur n'est pas connecté. Ainsi, la prochaine fois que vous souhaiterez télécharger toutes les images d’un site Web ou d’une page, wget pourra vous aider.
Installation :
$ pip install wget
Exemple :
import wget url = 'http://www.futurecrew.com/skaven/song_files/mp3/razorback.mp3' filename = wget.download(url) 100% [................................................] 3841532 / 3841532 filename 'razorback.mp3'
Pour ceux qui sont frustrés face à la date et à l'heure en python, Pendulum est fait pour vous. Il s'agit d'un package Python qui simplifie les opérations datetime. Il s'agit d'un simple remplacement des classes natives de Python. Consultez la documentation pour un apprentissage plus approfondi.
Installation :
$ pip install pendulum
Exemple :
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
On peut voir que la plupart des algorithmes de classification fonctionnent mieux lorsque le nombre d'échantillons dans chaque classe est fondamentalement le même, c'est-à-dire que les données doivent être équilibré. Cependant, la plupart des cas réels sont des ensembles de données déséquilibrés, qui ont un impact important sur la phase d’apprentissage et les prédictions ultérieures de l’algorithme d’apprentissage automatique. Heureusement, cette bibliothèque est conçue pour résoudre ce problème. Il est compatible avec scikit-learn et fait partie du projet scikit-lear-contrib. Essayez de l'utiliser la prochaine fois que vous rencontrerez un ensemble de données déséquilibré.
Installation :
$ pip install -U imbalanced-learn # 或者 $ conda install -c conda-forge imbalanced-learn
Exemple :
Veuillez vous référer à la documentation pour l'utilisation et les exemples.
Dans les tâches PNL, le nettoyage des données textuelles nécessite souvent le remplacement de mots-clés dans des phrases ou l'extraction de mots-clés à partir de phrases. Généralement, cela peut être fait à l'aide d'expressions régulières, mais cela peut devenir fastidieux si le nombre de termes recherchés se chiffre en milliers. Le module FlashText de Python est basé sur l'algorithme FlashText et offre une alternative adaptée à cette situation. L'avantage de FlashText est que la durée d'exécution est la même quel que soit le nombre de termes de recherche. Vous pouvez en savoir plus ici.
Installation :
$ pip install flashtext
Exemple :
Extraire des mots-clés
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']
Remplacer des mots-clés
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
Le nom de cette bibliothèque semble étrange, mais lorsqu'il s'agit de correspondance de chaînes, fuzzywuzzy est une bibliothèque très utile. Des opérations telles que le calcul du degré de correspondance de chaîne et du degré de correspondance de jeton peuvent être facilement mises en œuvre, et les enregistrements stockés dans différentes bases de données peuvent également être facilement mis en correspondance.
Installation :
$ pip install fuzzywuzzy
Exemples :
from fuzzywuzzy import fuzz from fuzzywuzzy import process # 简单匹配度 fuzz.ratio("this is a test", "this is a test!") 97 # 模糊匹配度 fuzz.partial_ratio("this is a test", "this is a test!") 100
Des exemples plus intéressants peuvent être trouvés dans le référentiel GitHub.
L'analyse des séries chronologiques est l'un des problèmes les plus courants dans le domaine de l'apprentissage automatique. PyFlux est une bibliothèque open source en Python conçue pour travailler avec des problèmes de séries chronologiques. La bibliothèque possède une excellente collection de modèles de séries chronologiques modernes, notamment les modèles ARIMA, GARCH et VAR. En bref, PyFlux propose une approche probabiliste de la modélisation de séries chronologiques. Ça vaut le coup d'essayer.
Installation
pip install pyflux
Exemples
Veuillez vous référer à la documentation officielle pour une utilisation détaillée et des exemples.
L'affichage des résultats est également un aspect important de la science des données. Pouvoir visualiser les résultats sera un grand avantage. IPyvolume est une bibliothèque Python qui peut visualiser des volumes et des graphiques tridimensionnels (tels que des nuages de points tridimensionnels, etc.) dans les notebooks Jupyter et ne nécessite qu'une petite quantité de configuration. Mais il en est encore au stade de la version pré-1.0. Une métaphore plus appropriée à expliquer est la suivante : le volshow d'IPyvolume est aussi utile pour les tableaux tridimensionnels que l'imshow de matplotlib l'est pour les tableaux bidimensionnels. Plus disponible ici. R Utilisez PIPre
$ pip install ipyvolume
rreee
Exemple AnimationDessin corporel
8. Dash
dash est un framework Python efficace pour créer une application Web. Il est conçu sur la base de Flask, Plotly.js et React.js et est lié à de nombreux éléments d'interface utilisateur modernes tels que des listes déroulantes, des curseurs et des graphiques. Vous pouvez directement utiliser le code Python pour écrire une analyse pertinente sans avoir à utiliser javascript. Dash est idéal pour créer des applications de visualisation de données. Ces applications peuvent ensuite être rendues dans un navigateur Web. Le guide d'utilisation est disponible ici. Installation$ conda install -c conda-forge ipyvolume
OpenAI 的 Gym 是一款用于增强学习算法的开发和比较工具包。它兼容任何数值计算库,如 TensorFlow 或 Theano。Gym 库是测试问题集合的必备工具,这个集合也称为环境 —— 你可以用它来开发你的强化学习算法。这些环境有一个共享接口,允许你进行通用算法的编写。
安装
pip install gym
例子这个例子会运行CartPole-v0环境中的一个实例,它的时间步数为 1000,每一步都会渲染整个场景。
以上这些有用的数据科学 Python 库都是我精心挑选出来的,不是常见的如 numpy 和 pandas 等库。如果你知道其它库,可以添加到列表中来,请在下面的评论中提一下。另外别忘了先尝试运行一下它们。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!