Table des matières
1. Wget
2. Pendulum
3. apprentissage déséquilibré
4. FlashText
5. fuzzywuzzy
6. PyFlux
7. Ipyvolume
九、Gym
总结
Maison développement back-end Tutoriel Python Neuf bibliothèques Python super utiles pour la science des données

Neuf bibliothèques Python super utiles pour la science des données

Apr 17, 2023 am 09:25 AM
python 编程语言 开发

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.

1. Wget

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
Copier après la connexion

Exemple :

import wget
url = 'http://www.futurecrew.com/skaven/song_files/mp3/razorback.mp3'

filename = wget.download(url)
100% [................................................] 3841532 / 3841532

filename
'razorback.mp3'
Copier après la connexion

2. Pendulum

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
Copier après la connexion

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
Copier après la connexion

3. apprentissage déséquilibré

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
Copier après la connexion

Exemple :

Veuillez vous référer à la documentation pour l'utilisation et les exemples.

4. FlashText

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
Copier après la connexion

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']
Copier après la connexion

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
Copier après la connexion

5. 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
Copier après la connexion

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
Copier après la connexion

Des exemples plus intéressants peuvent être trouvés dans le référentiel GitHub.

6. PyFlux

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
Copier après la connexion

Exemples

Veuillez vous référer à la documentation officielle pour une utilisation détaillée et des exemples.

7. Ipyvolume

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
Copier après la connexion
E

pour utiliser Conda/Anaconda

rreee

Exemple

Animation

Dessin corporel Neuf bibliothèques Python super utiles pour la science des données

8. DashNeuf bibliothèques Python super utiles pour la science des données

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
Copier après la connexion

Exemple L'exemple ci-dessous montre un graphique hautement interactif avec une fonctionnalité déroulante. Lorsque l'utilisateur sélectionne une valeur dans le menu déroulant, le code de l'application exporte dynamiquement les données de Google Finance vers un Panda DataFrame.

Neuf bibliothèques Python super utiles pour la science des données

九、Gym

OpenAI 的 Gym 是一款用于增强学习算法的开发和比较工具包。它兼容任何数值计算库,如 TensorFlow 或 Theano。Gym 库是测试问题集合的必备工具,这个集合也称为环境 —— 你可以用它来开发你的强化学习算法。这些环境有一个共享接口,允许你进行通用算法的编写。

安装

pip install gym
Copier après la connexion

例子这个例子会运行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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Démystifier javascript: ce qu'il fait et pourquoi c'est important Démystifier javascript: ce qu'il fait et pourquoi c'est important Apr 09, 2025 am 12:07 AM

JavaScript est la pierre angulaire du développement Web moderne, et ses principales fonctions incluent la programmation axée sur les événements, la génération de contenu dynamique et la programmation asynchrone. 1) La programmation axée sur les événements permet aux pages Web de changer dynamiquement en fonction des opérations utilisateur. 2) La génération de contenu dynamique permet d'ajuster le contenu de la page en fonction des conditions. 3) La programmation asynchrone garantit que l'interface utilisateur n'est pas bloquée. JavaScript est largement utilisé dans l'interaction Web, les applications à une page et le développement côté serveur, améliorant considérablement la flexibilité de l'expérience utilisateur et du développement multiplateforme.

MySQL doit-il payer MySQL doit-il payer Apr 08, 2025 pm 05:36 PM

MySQL a une version communautaire gratuite et une version d'entreprise payante. La version communautaire peut être utilisée et modifiée gratuitement, mais le support est limité et convient aux applications avec des exigences de stabilité faibles et des capacités techniques solides. L'Enterprise Edition fournit une prise en charge commerciale complète pour les applications qui nécessitent une base de données stable, fiable et haute performance et disposées à payer pour le soutien. Les facteurs pris en compte lors du choix d'une version comprennent la criticité des applications, la budgétisation et les compétences techniques. Il n'y a pas d'option parfaite, seulement l'option la plus appropriée, et vous devez choisir soigneusement en fonction de la situation spécifique.

HaDIDB: une base de données légère et évolutive horizontalement dans Python HaDIDB: une base de données légère et évolutive horizontalement dans Python Apr 08, 2025 pm 06:12 PM

HaDIDB: Une base de données Python évolutive de haut niveau légère HaDIDB (HaDIDB) est une base de données légère écrite en Python, avec un niveau élevé d'évolutivité. Installez HaDIDB à l'aide de l'installation PIP: PiPinStallHaDIDB User Management Créer un utilisateur: CreateUser () pour créer un nouvel utilisateur. La méthode Authentication () authentifie l'identité de l'utilisateur. FromHadidb.OperationMportUserUser_OBJ = User ("Admin", "Admin") User_OBJ.

Méthode de Navicat pour afficher le mot de passe de la base de données MongoDB Méthode de Navicat pour afficher le mot de passe de la base de données MongoDB Apr 08, 2025 pm 09:39 PM

Il est impossible de visualiser le mot de passe MongoDB directement via NAVICAT car il est stocké sous forme de valeurs de hachage. Comment récupérer les mots de passe perdus: 1. Réinitialiser les mots de passe; 2. Vérifiez les fichiers de configuration (peut contenir des valeurs de hachage); 3. Vérifiez les codes (May Code Hardcode).

Comment résoudre MySQL ne peut pas se connecter à l'hôte local Comment résoudre MySQL ne peut pas se connecter à l'hôte local Apr 08, 2025 pm 02:24 PM

La connexion MySQL peut être due aux raisons suivantes: le service MySQL n'est pas démarré, le pare-feu intercepte la connexion, le numéro de port est incorrect, le nom d'utilisateur ou le mot de passe est incorrect, l'adresse d'écoute dans my.cnf est mal configurée, etc. 2. Ajustez les paramètres du pare-feu pour permettre à MySQL d'écouter le port 3306; 3. Confirmez que le numéro de port est cohérent avec le numéro de port réel; 4. Vérifiez si le nom d'utilisateur et le mot de passe sont corrects; 5. Assurez-vous que les paramètres d'adresse de liaison dans My.cnf sont corrects.

MySQL Workbench peut-il se connecter à MariaDB MySQL Workbench peut-il se connecter à MariaDB Apr 08, 2025 pm 02:33 PM

MySQL Workbench peut se connecter à MARIADB, à condition que la configuration soit correcte. Sélectionnez d'abord "MariADB" comme type de connecteur. Dans la configuration de la connexion, définissez correctement l'hôte, le port, l'utilisateur, le mot de passe et la base de données. Lorsque vous testez la connexion, vérifiez que le service MARIADB est démarré, si le nom d'utilisateur et le mot de passe sont corrects, si le numéro de port est correct, si le pare-feu autorise les connexions et si la base de données existe. Dans une utilisation avancée, utilisez la technologie de mise en commun des connexions pour optimiser les performances. Les erreurs courantes incluent des autorisations insuffisantes, des problèmes de connexion réseau, etc. Lors des erreurs de débogage, analysez soigneusement les informations d'erreur et utilisez des outils de débogage. L'optimisation de la configuration du réseau peut améliorer les performances

Comment optimiser les performances MySQL pour les applications de haute charge? Comment optimiser les performances MySQL pour les applications de haute charge? Apr 08, 2025 pm 06:03 PM

Guide d'optimisation des performances de la base de données MySQL dans les applications à forte intensité de ressources, la base de données MySQL joue un rôle crucial et est responsable de la gestion des transactions massives. Cependant, à mesure que l'échelle de l'application se développe, les goulots d'étranglement des performances de la base de données deviennent souvent une contrainte. Cet article explorera une série de stratégies efficaces d'optimisation des performances MySQL pour garantir que votre application reste efficace et réactive dans des charges élevées. Nous combinerons des cas réels pour expliquer les technologies clés approfondies telles que l'indexation, l'optimisation des requêtes, la conception de la base de données et la mise en cache. 1. La conception de l'architecture de la base de données et l'architecture optimisée de la base de données sont la pierre angulaire de l'optimisation des performances MySQL. Voici quelques principes de base: sélectionner le bon type de données et sélectionner le plus petit type de données qui répond aux besoins peut non seulement économiser un espace de stockage, mais également améliorer la vitesse de traitement des données.

Comment utiliser Aws Glue Crawler avec Amazon Athena Comment utiliser Aws Glue Crawler avec Amazon Athena Apr 09, 2025 pm 03:09 PM

En tant que professionnel des données, vous devez traiter de grandes quantités de données provenant de diverses sources. Cela peut poser des défis à la gestion et à l'analyse des données. Heureusement, deux services AWS peuvent aider: AWS Glue et Amazon Athena.

See all articles