Maison développement back-end Tutoriel Python Analyse exploratoire des données : fouiller dans l'arriéré

Analyse exploratoire des données : fouiller dans l'arriéré

Dec 23, 2024 pm 05:50 PM

Dans l'histoire inspirante des Six Triple Eight, la première étape de leur mission consistait à évaluer et à organiser un énorme arriéré de courrier non livré. Ces empilements, imposants jusqu'au plafond, ont dû être catégorisés et compris avant de pouvoir réaliser des progrès. Dans le monde de l'apprentissage automatique moderne, cette phase initiale s'apparente à l'Analyse exploratoire des données (EDA).

Pour cette série, nous reproduirons ce processus en utilisant un ensemble de données CSV, où chaque ligne contient une catégorie (par exemple, « technologie », « entreprise ») et le texte qui lui est associé. Les catégories fonctionnent comme des étiquettes, indiquant à quoi appartient chaque morceau de texte. Des outils tels que Pandas pour la manipulation des données, Matplotlib pour la visualisation, WordCloud pour les informations textuelles, Tiktoken pour l'analyse des jetons et NLTK pour le traitement de texte nous aideront à comprendre notre ensemble de données.

Dans cette étape, nous allons :

  1. Chargez les données et inspectez leur structure.

  2. Identifier les valeurs manquantes ou incohérentes qui pourraient nuire aux performances de notre modèle.

  3. Explorez les répartitions des catégories pour comprendre l'équilibre entre les étiquettes.

  4. Visualisez les fréquences des mots dans les données textuelles pour découvrir des modèles.

  5. Analysez le nombre de jetons à l'aide de Tiktoken pour mesurer la complexité.

Cette phase EDA reflète les efforts de tri méticuleux des Six Triple Eight, qui ont dû donner un sens au chaos avant de pouvoir remettre de l'ordre. En comprenant notre ensemble de données en détail, nous jetons les bases de la création d'un LLM affiné, capable de catégoriser et d'interpréter le texte avec précision.

Introduction

L'analyse exploratoire des données (EDA) revient à s'attaquer à un énorme arriéré de données : empilées, non organisées et remplies d'un potentiel inexploité. Tout comme l'unité Six Triple Eight s'est attaquée à l'énorme arriéré de courrier non livré pendant la Seconde Guerre mondiale, l'EDA est notre moyen de passer au crible le chaos pour découvrir des informations, identifier les tendances et préparer les prochaines étapes de l'analyse des données.

Dans cette exploration, nous plongerons dans un ensemble de données d'articles de presse de la BBC, démêlant sa structure, corrigeant les incohérences et découvrant les histoires enfouies dans les données. "

Évaluation du retard : aperçu de l'ensemble de données

Pour commencer, nous devons d'abord comprendre l'échelle et la structure de notre ensemble de données. L'ensemble de données d'articles d'actualité de la BBC comprend 2 234 entrées réparties dans cinq catégories : affaires, sports, politique, technologie et divertissement. Chaque entrée présente deux caractéristiques principales :

  • catégorie : le sujet ou la section de l'article.
  • texte : Le contenu complet de l'article.

Pour avoir une vue plus claire de ce avec quoi nous travaillons, nous avons chargé les données dans un Pandas DataFrame, effectué une inspection rapide et découvert :

Nettoyer l'arriéré

Alors que le Six Triple Eight s'est attaqué à des piles de courrier non triés, nous devons nous aussi organiser notre ensemble de données. Le processus de nettoyage impliquait plusieurs étapes clés :

  • Suppression des doublons
    Des articles en double encombraient l’ensemble de données. Après avoir identifié et supprimé ces redondances.

  • Gestion des valeurs manquantes
    Bien que notre ensemble de données soit relativement propre, nous nous sommes assurés que toutes les valeurs nulles potentielles étaient prises en compte, ne laissant aucune entrée vide dans les données finales."

Décomposer les catégories

Une fois le retard éliminé, nous avons analysé la répartition des articles entre les catégories pour identifier les thèmes dominants. Voici ce que nous avons trouvé :

  • Premières catégories : affaires et sports à égalité pour la plus grande part, chacune contenant 512 articles.

  • Catégories plus petites : le divertissement, la politique et la technologie comportaient moins d'articles mais offraient des informations uniques.

La distribution a confirmé que l'ensemble de données était équilibré, nous permettant de nous concentrer sur une analyse plus approfondie sans nous soucier d'un déséquilibre significatif des catégories."

Zoom avant : les articles sportifs sous le microscope

Tout comme le tri du courrier par destination, nous avons choisi de nous concentrer sur la catégorie sports pour approfondir. L'objectif était d'analyser le contenu textuel et d'en extraire des modèles significatifs."

  • Tokénisation et suppression des mots vides
    À l'aide de la bibliothèque NLTK, nous avons tokenisé le texte en mots individuels et supprimé les mots vides courants (par exemple, « et », « le », « est »). Cela nous a permis de nous concentrer sur des mots ayant une plus grande signification pour la catégorie."

  • Analyse de la fréquence des mots
    Une distribution de fréquence a été créée pour identifier les termes les plus courants dans les articles sportifs. Sans surprise, des mots comme « match », « équipe » et « jeu » ont dominé, reflétant la nature compétitive du contenu. »

Visualiser les résultats : un nuage de mots
Pour capturer l'essence des articles sportifs, nous avons généré un nuage de mots. Les termes les plus fréquemment utilisés apparaissent plus grands, dressant un tableau vivant des thèmes principaux de la catégorie. "

Exploratory Data Analysis: Digging Through the Backlog

Principaux points à retenir

Tout comme Six Triple Eight a méticuleusement trié et livré l'arriéré de courrier, notre processus EDA a dévoilé une vue structurée et perspicace de l'ensemble de données d'information de la BBC.

Code

!pip install tiktoken
!pip install matplotlib
!pip install wordcloud
!pip install nltk
!pip install pandas

import pandas as pd

df = pd.read_csv('/content/bbc.csv', on_bad_lines='skip')  


df.head()

df.info()

df.describe()

label_count = df['category'].value_counts()


len(df['text'])


df.drop_duplicates(inplace=True)

null_values = df.isnull().sum()

df.dropna(inplace=True)

import nltk
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize
from wordcloud import WordCloud
from collections import Counter
import matplotlib.pyplot as plt


nltk.download('punkt')
nltk.download('stopwords')
nltk.download('punkt_tab') 


target_label ="sport"
target_df = df[df['category'] == target_label]



target_word = [ word.lower()  for text in target_df['text']
                 for word in word_tokenize(text)
                 if word.isalnum() and word not in stopwords.words('english')
                   ]

target_word_count = Counter(target_word)


word_cloud = WordCloud().generate_from_frequencies(target_word_count)


plt.figure(figsize=(10, 5))
plt.imshow(word_cloud, interpolation='bilinear')
plt.axis('off')
plt.show()

Copier après la connexion

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
Nordhold: Système de fusion, expliqué
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 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)

Sujets chauds

Tutoriel Java
1676
14
Tutoriel PHP
1278
29
Tutoriel C#
1257
24
Python vs C: courbes d'apprentissage et facilité d'utilisation Python vs C: courbes d'apprentissage et facilité d'utilisation Apr 19, 2025 am 12:20 AM

Python est plus facile à apprendre et à utiliser, tandis que C est plus puissant mais complexe. 1. La syntaxe Python est concise et adaptée aux débutants. Le typage dynamique et la gestion automatique de la mémoire le rendent facile à utiliser, mais peuvent entraîner des erreurs d'exécution. 2.C fournit des fonctionnalités de contrôle de bas niveau et avancées, adaptées aux applications haute performance, mais a un seuil d'apprentissage élevé et nécessite une gestion manuelle de la mémoire et de la sécurité.

Apprendre Python: 2 heures d'étude quotidienne est-elle suffisante? Apprendre Python: 2 heures d'étude quotidienne est-elle suffisante? Apr 18, 2025 am 12:22 AM

Est-ce suffisant pour apprendre Python pendant deux heures par jour? Cela dépend de vos objectifs et de vos méthodes d'apprentissage. 1) Élaborer un plan d'apprentissage clair, 2) Sélectionnez les ressources et méthodes d'apprentissage appropriées, 3) la pratique et l'examen et la consolidation de la pratique pratique et de l'examen et de la consolidation, et vous pouvez progressivement maîtriser les connaissances de base et les fonctions avancées de Python au cours de cette période.

Python vs. C: Explorer les performances et l'efficacité Python vs. C: Explorer les performances et l'efficacité Apr 18, 2025 am 12:20 AM

Python est meilleur que C dans l'efficacité du développement, mais C est plus élevé dans les performances d'exécution. 1. La syntaxe concise de Python et les bibliothèques riches améliorent l'efficacité du développement. Les caractéristiques de type compilation et le contrôle du matériel de CC améliorent les performances d'exécution. Lorsque vous faites un choix, vous devez peser la vitesse de développement et l'efficacité de l'exécution en fonction des besoins du projet.

Python vs C: Comprendre les principales différences Python vs C: Comprendre les principales différences Apr 21, 2025 am 12:18 AM

Python et C ont chacun leurs propres avantages, et le choix doit être basé sur les exigences du projet. 1) Python convient au développement rapide et au traitement des données en raison de sa syntaxe concise et de son typage dynamique. 2) C convient à des performances élevées et à une programmation système en raison de son typage statique et de sa gestion de la mémoire manuelle.

Quelle partie fait partie de la bibliothèque standard Python: listes ou tableaux? Quelle partie fait partie de la bibliothèque standard Python: listes ou tableaux? Apr 27, 2025 am 12:03 AM

PythonlistSaReparmentofthestandardLibrary, tandis que les coloccules de colocède, tandis que les colocculations pour la base de la Parlementaire, des coloments de forage polyvalent, tandis que la fonctionnalité de la fonctionnalité nettement adressée.

Python: automatisation, script et gestion des tâches Python: automatisation, script et gestion des tâches Apr 16, 2025 am 12:14 AM

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.

Python pour l'informatique scientifique: un look détaillé Python pour l'informatique scientifique: un look détaillé Apr 19, 2025 am 12:15 AM

Les applications de Python en informatique scientifique comprennent l'analyse des données, l'apprentissage automatique, la simulation numérique et la visualisation. 1.Numpy fournit des tableaux multidimensionnels et des fonctions mathématiques efficaces. 2. Scipy étend la fonctionnalité Numpy et fournit des outils d'optimisation et d'algèbre linéaire. 3. Pandas est utilisé pour le traitement et l'analyse des données. 4.Matplotlib est utilisé pour générer divers graphiques et résultats visuels.

Python pour le développement Web: applications clés Python pour le développement Web: applications clés Apr 18, 2025 am 12:20 AM

Les applications clés de Python dans le développement Web incluent l'utilisation des cadres Django et Flask, le développement de l'API, l'analyse et la visualisation des données, l'apprentissage automatique et l'IA et l'optimisation des performances. 1. Framework Django et Flask: Django convient au développement rapide d'applications complexes, et Flask convient aux projets petits ou hautement personnalisés. 2. Développement de l'API: Utilisez Flask ou DjangorestFramework pour construire RestulAPI. 3. Analyse et visualisation des données: utilisez Python pour traiter les données et les afficher via l'interface Web. 4. Apprentissage automatique et AI: Python est utilisé pour créer des applications Web intelligentes. 5. Optimisation des performances: optimisée par la programmation, la mise en cache et le code asynchrones

See all articles