suchen
HeimBackend-EntwicklungPython-TutorialExplorative Datenanalyse: Den Rückstand durchforsten

In der inspirierenden Geschichte der Six Triple Eight bestand der erste Schritt ihrer Mission darin, einen überwältigenden Rückstand an nicht zugestellter Post zu bewerten und zu organisieren. Diese bis zur Decke aufragenden Stapel mussten kategorisiert und verstanden werden, bevor Fortschritte erzielt werden konnten. In der Welt des modernen maschinellen Lernens ähnelt diese Anfangsphase der Exploratory Data Analysis (EDA).

Für diese Serie replizieren wir diesen Prozess mithilfe eines CSV-Datensatzes, wobei jede Zeile eine Kategorie (z. B. „Technik“, „Geschäft“) und den damit verbundenen Text enthält. Die Kategorien fungieren als Beschriftungen und geben an, wo jeder Textabschnitt hingehört. Tools wie Pandas zur Datenmanipulation, Matplotlib zur Visualisierung, WordCloud für Texteinblicke, Tiktoken zur Token-Analyse und NLTK zur Textverarbeitung helfen uns, unseren Datensatz zu verstehen.

In diesem Schritt werden wir:

  1. Laden Sie die Daten und überprüfen Sie ihre Struktur.

  2. Identifizieren Sie fehlende oder inkonsistente Werte, die die Leistung unseres Modells beeinträchtigen könnten.

  3. Untersuchen Sie die Kategorieverteilungen, um das Gleichgewicht zwischen den Labels zu verstehen.

  4. Visualisieren Sie Worthäufigkeiten in Textdaten, um Muster aufzudecken.

  5. Analysieren Sie die Anzahl der Token mit Tiktoken, um die Komplexität zu messen.

Diese EDA-Phase spiegelt die akribischen Sortierbemühungen der Six Triple Eight wider, die erst einen Sinn im Chaos finden mussten, bevor sie Ordnung schaffen konnten. Indem wir unseren Datensatz im Detail verstehen, legen wir den Grundstein für den Aufbau eines fein abgestimmten LLM, das in der Lage ist, Texte präzise zu kategorisieren und zu interpretieren.

Einführung

Exploratory Data Analysis (EDA) ist vergleichbar mit der Bewältigung eines gewaltigen Datenrückstands – hoch gestapelt, unorganisiert und voller ungenutztem Potenzial. Ähnlich wie die Six Triple Eight-Einheit den überwältigenden Rückstand nicht zugestellter Post während des Zweiten Weltkriegs bewältigte, ist EDA unsere Art, das Chaos zu durchforsten, Erkenntnisse zu gewinnen, Trends zu erkennen und uns auf die nächsten Phasen der Datenanalyse vorzubereiten.

In dieser Erkundung tauchen wir in einen Datensatz von BBC-Nachrichtenartikeln ein, entschlüsseln dessen Struktur, beheben Inkonsistenzen und decken die in den Daten verborgenen Geschichten auf.“

Bewertung des Backlogs: Datensatzübersicht

Zunächst müssen wir den Umfang und die Struktur unseres Datensatzes verstehen. Der Datensatz der BBC-Nachrichtenartikel umfasst 2.234 Einträge, die auf fünf Kategorien verteilt sind: Wirtschaft, Sport, Politik, Technologie und Unterhaltung. Jeder Eintrag hat zwei Hauptfunktionen:

  • Kategorie: Das Thema oder der Abschnitt des Artikels.
  • Text: Der vollständige Inhalt des Artikels.

Um einen klareren Überblick darüber zu erhalten, womit wir arbeiten, haben wir die Daten in einen Pandas DataFrame geladen, eine kurze Inspektion durchgeführt und Folgendes festgestellt:

Bereinigen des Rückstands

Während die Six Triple Eight unsortierte Poststapel in Angriff nahm, müssen auch wir unseren Datensatz organisieren. Der Reinigungsprozess umfasste mehrere wichtige Schritte:

  • Duplikate entfernen
    Doppelte Artikel überfüllten den Datensatz. Nachdem diese Redundanzen identifiziert und beseitigt wurden.

  • Umgang mit fehlenden Werten
    Obwohl unser Datensatz relativ sauber war, haben wir sichergestellt, dass alle potenziellen Nullwerte berücksichtigt wurden und keine leeren Einträge in den endgültigen Daten zurückblieben.“

Aufschlüsselung der Kategorien

Nachdem wir den Rückstand beseitigt hatten, analysierten wir die Verteilung der Artikel über die Kategorien, um dominante Themen zu identifizieren. Folgendes haben wir gefunden:

  • Top-Kategorien: Wirtschaft und Sport teilen sich den größten Anteil mit jeweils 512 Artikeln.

  • Kleinere Kategorien: Unterhaltung, Politik und Technik hatten weniger Artikel, boten aber einzigartige Einblicke.

Die Verteilung bestätigte, dass der Datensatz ausgewogen war, sodass wir uns auf eine tiefere Analyse konzentrieren konnten, ohne uns über ein erhebliches Ungleichgewicht der Kategorien Gedanken machen zu müssen.

Vergrößern: Sportartikel unter der Lupe

Ähnlich wie beim Sortieren von Post nach ihrem Ziel haben wir uns für einen tieferen Einblick auf die Kategorie „Sport“ konzentriert. Ziel war es, den Textinhalt zu analysieren und aussagekräftige Muster zu extrahieren.“

  • Tokenisierung und Entfernung von Stoppwörtern
    Mithilfe der NLTK-Bibliothek haben wir den Text in einzelne Wörter unterteilt und gängige Stoppwörter entfernt (z. B. „und“, „der“, „ist“). Dadurch konnten wir uns auf Wörter mit größerer Bedeutung für die Kategorie konzentrieren.“

  • Worthäufigkeitsanalyse
    Um die häufigsten Begriffe in Sportartikeln zu identifizieren, wurde eine Häufigkeitsverteilung erstellt. Es überrascht nicht, dass Wörter wie „Spiel“, „Team“ und „Spiel“ dominierten, was den Wettbewerbscharakter des Inhalts widerspiegelt.“

Visualisierung der Ergebnisse: Eine Wortwolke
Um die Essenz der Sportartikel einzufangen, haben wir eine Wortwolke erstellt. Die am häufigsten verwendeten Begriffe erscheinen größer und zeichnen ein anschauliches Bild der Kernthemen der Kategorie.“

Exploratory Data Analysis: Digging Through the Backlog

Wichtige Erkenntnisse

So wie die Six Triple Eight den Poststau sorgfältig sortiert und zugestellt haben, hat unser EDA-Prozess eine strukturierte und aufschlussreiche Ansicht des BBC-Nachrichtendatensatzes enthüllt.

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()

Das obige ist der detaillierte Inhalt vonExplorative Datenanalyse: Den Rückstand durchforsten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Zusammenführen von Listen in Python: Auswählen der richtigen MethodeZusammenführen von Listen in Python: Auswählen der richtigen MethodeMay 14, 2025 am 12:11 AM

Tomgelistsinpython, Youcanusethe-Operator, ExtendMethod, ListCompredesion, Oritertools.chain, jeweils mitSpezifizierungen: 1) Der OperatorissimpleButlessEfficienceforlargelists; 2) Extendismory-Effizienzbutmodifiestheoriginallist;

Wie verkettet man zwei Listen in Python 3?Wie verkettet man zwei Listen in Python 3?May 14, 2025 am 12:09 AM

In Python 3 können zwei Listen mit einer Vielzahl von Methoden verbunden werden: 1) Verwenden Sie den Bediener, der für kleine Listen geeignet ist, jedoch für große Listen ineffizient ist. 2) Verwenden Sie die Erweiterungsmethode, die für große Listen geeignet ist, mit hoher Speicher -Effizienz, jedoch die ursprüngliche Liste. 3) Verwenden Sie * Operator, der für das Zusammenführen mehrerer Listen geeignet ist, ohne die ursprüngliche Liste zu ändern. 4) Verwenden Sie iTertools.chain, das für große Datensätze mit hoher Speicher -Effizienz geeignet ist.

Python Concatenate List SaitenPython Concatenate List SaitenMay 14, 2025 am 12:08 AM

Die Verwendung der join () -Methode ist die effizienteste Möglichkeit, Zeichenfolgen aus Listen in Python zu verbinden. 1) Verwenden Sie die join () -Methode, um effizient und leicht zu lesen. 2) Der Zyklus verwendet die Bediener für große Listen ineffizient. 3) Die Kombination aus Listenverständnis und Join () eignet sich für Szenarien, die Konvertierung erfordern. 4) Die Verringerung () -Methode ist für andere Arten von Reduktionen geeignet, ist jedoch für die String -Verkettung ineffizient. Der vollständige Satz endet.

Python -Ausführung, was ist das?Python -Ausführung, was ist das?May 14, 2025 am 12:06 AM

PythonexexecutionStheProcessOfTransformingPythonCodeIntoexexexecleableInstructions.1) ThePythonvirtualmachine (PVM) Ausführungen

Python: Was sind die wichtigsten Merkmale?Python: Was sind die wichtigsten Merkmale?May 14, 2025 am 12:02 AM

Zu den wichtigsten Merkmalen von Python gehören: 1. Die Syntax ist prägnant und leicht zu verstehen, für Anfänger geeignet; 2. Dynamisches Typsystem, Verbesserung der Entwicklungsgeschwindigkeit; 3. Reiche Standardbibliothek, Unterstützung mehrerer Aufgaben; 4. Starke Gemeinschaft und Ökosystem, die umfassende Unterstützung leisten; 5. Interpretation, geeignet für Skript- und Schnellprototypen; 6. Support für Multi-Paradigma, geeignet für verschiedene Programmierstile.

Python: Compiler oder Dolmetscher?Python: Compiler oder Dolmetscher?May 13, 2025 am 12:10 AM

Python ist eine interpretierte Sprache, enthält aber auch den Zusammenstellungsprozess. 1) Python -Code wird zuerst in Bytecode zusammengestellt. 2) Bytecode wird von Python Virtual Machine interpretiert und ausgeführt. 3) Dieser Hybridmechanismus macht Python sowohl flexibel als auch effizient, aber nicht so schnell wie eine vollständig kompilierte Sprache.

Python für Loop vs während der Schleife: Wann zu verwenden, welches?Python für Loop vs während der Schleife: Wann zu verwenden, welches?May 13, 2025 am 12:07 AM

UseaforloopwheniteratoverasequenceOrforaPecificNumberoftimes; UseaWhileloopWencontiningUntilAconDitionisMet.ForloopsardealForknown -Sequencies, während whileloopSuituationen mithungeterminediterationen.

Python Loops: Die häufigsten FehlerPython Loops: Die häufigsten FehlerMay 13, 2025 am 12:07 AM

PythonloopscanleadtoErors-ähnliche Finanzeloops, ModificingListsDuringiteration, Off-by-Oneerrors, Zero-Indexingissues und Nestroxinefficiens.toavoidthese: 1) Verwenden Sie

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Nordhold: Fusionssystem, erklärt
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

mPDF

mPDF

mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung