Textvorverarbeitungstechniken in Python

王林
Freigeben: 2023-06-11 08:56:49
Original
1932 Leute haben es durchsucht

Python ist eine leistungsstarke Programmiersprache, die in den Bereichen Datenwissenschaft, maschinelles Lernen, Verarbeitung natürlicher Sprache und anderen Bereichen weit verbreitet ist. In diesen Bereichen ist die Textvorverarbeitung ein sehr wichtiger Schritt, der das Rauschen von Textdaten reduzieren und die Genauigkeit des Modells verbessern kann. In diesem Artikel stellen wir einige gängige Textvorverarbeitungstechniken in Python vor.

1. Textdaten lesen

In Python können Sie die Funktion open() verwenden, um Textdateien zu lesen.

with open('example.txt', 'r') as f:
    text = f.read()
Nach dem Login kopieren

In diesem Beispiel öffnen wir eine Textdatei mit dem Namen „example.txt“ und lesen ihren Inhalt. Der Inhalt dieser Textdatei wird in einer String-Variablen namens „text“ gespeichert. Zusätzlich zur Funktion read() können wir auch die Funktion readlines() verwenden, um den Inhalt einer Textdatei in einer Liste zu speichern.

with open('example.txt', 'r') as f:
    lines = f.readlines()
Nach dem Login kopieren

In diesem Beispiel wird der Inhalt von „example.txt“ als Liste gespeichert, wobei jede Zeile ein Element der Liste ist. Dies ist nützlich, wenn Sie mit umfangreichen Textdaten arbeiten, da mehrere Datenzeilen gleichzeitig gelesen und verarbeitet werden können.

2. Satzzeichen und Zahlen entfernen

Bei der Textvorverarbeitung müssen wir normalerweise Satzzeichen und Zahlen aus dem Text entfernen. Das re-Modul in Python bietet sehr praktische reguläre Ausdrucksfunktionen zur Bewältigung dieser Aufgaben.

import re

text = "This is an example sentence! 12345."
text = re.sub(r'[^ws]', '', text) # Remove punctuation
text = re.sub(r'd+', '', text) # Remove numbers
Nach dem Login kopieren

In diesem Beispiel verwenden wir zunächst die Funktion re.sub() und den regulären Ausdruck „1“, um alle Satzzeichen und Leerzeichen zu entfernen. Anschließend verwenden wir die Funktion re.sub() und den regulären Ausdruck „d+“, um alle Zahlen aus dem Text zu entfernen. Abschließend speichern wir den verarbeiteten Text in der String-Variablen „text“.

3. Wortsegmentierung

Wortsegmentierung bezieht sich auf die Aufteilung des Textes in einzelne Wörter. Die nltk-Bibliothek und die spaCy-Bibliothek in Python bieten beide sehr nützliche Tools zur Wortsegmentierung. Hier nehmen wir die NLTK-Bibliothek als Beispiel.

import nltk

nltk.download('punkt')

text = "This is an example sentence."
words = nltk.word_tokenize(text)
Nach dem Login kopieren

In diesem Beispiel haben wir zuerst das Punkt-Paket der NLTK-Bibliothek heruntergeladen, ein sehr beliebtes Wortsegmentierungs-Toolkit in der NLTK-Bibliothek. Anschließend verwenden wir die Funktion nltk.word_tokenize(), um den Text in Wörter aufzuteilen und die Ergebnisse in der Liste „Wörter“ zu speichern.

4. Stoppwörter entfernen

Bei der Textverarbeitung ist es oft notwendig, häufige Stoppwörter zu entfernen, darunter „ist“, „a“, „dies“ usw. Die nltk-Bibliothek und die spaCy-Bibliothek in Python bieten ebenfalls gute Stoppwortlisten. Unten finden Sie ein Beispiel für die Verwendung der NLTK-Bibliothek.

import nltk

nltk.download('stopwords')

from nltk.corpus import stopwords

text = "This is an example sentence."
words = nltk.word_tokenize(text)

filtered_words = [word for word in words if word.lower() not in stopwords.words('english')]
Nach dem Login kopieren

In diesem Beispiel haben wir zuerst das Stoppwortpaket der NLTK-Bibliothek heruntergeladen und daraus die englische Stoppwortliste importiert. Anschließend verwenden wir Listenverständnis, um die Stoppwörter im Text aus der Wortliste zu entfernen. Schließlich erhalten wir eine Wortliste „filtered_words“, die keine Stoppwörter enthält.

5. Stemming

Stemming ist der Prozess der Normalisierung verschiedener Formen von Wörtern (wie Zeitform, Singular und Plural usw.) in die gleiche Form. Sowohl die nltk-Bibliothek als auch die spaCy-Bibliothek in Python bieten sehr nützliche Stemming-Tools. Hier nehmen wir auch die NLTK-Bibliothek als Beispiel.

import nltk

from nltk.stem import PorterStemmer

stemmer = PorterStemmer()

text = "This is an example sentence."
words = nltk.word_tokenize(text)

stemmed_words = [stemmer.stem(word) for word in words]
Nach dem Login kopieren

In diesem Beispiel haben wir zuerst die PorterStemmer-Klasse aus der nltk-Bibliothek importiert. Dann instanziieren wir ein PorterStemmer-Objekt. Als nächstes verwenden wir Listenverständnisse, um die Wortstämme aus dem Text zu extrahieren und die Ergebnisse in der Liste „stemmed_words“ zu speichern.

6. Part-of-Speech-Tagging

Unter Part-of-Speech-Tagging versteht man den Prozess der Markierung von Wörtern im Text in ihren Wortarten (z. B. Substantive, Verben, Adjektive usw.). Die nltk-Bibliothek und die spaCy-Bibliothek in Python bieten auch sehr nützliche Wortart-Tagging-Tools. Hier nehmen wir auch die NLTK-Bibliothek als Beispiel.

import nltk

nltk.download('averaged_perceptron_tagger')

text = "This is an example sentence."
words = nltk.word_tokenize(text)

tagged_words = nltk.pos_tag(words)
Nach dem Login kopieren

In diesem Beispiel haben wir zuerst das Averaged_perceptron_tagger-Paket der NLTK-Bibliothek heruntergeladen. Anschließend verwenden wir die Funktion nltk.word_tokenize(), um den Text in Wörter aufzuteilen und die Ergebnisse in der Liste „Wörter“ zu speichern. Als nächstes verwenden wir die Funktion nltk.pos_tag(), um Wörter mit ihren Wortarten zu kennzeichnen und die Ergebnisse in der Liste „tagged_words“ zu speichern.

Zusammenfassung

In diesem Artikel werden einige häufig verwendete Textvorverarbeitungstechniken in Python vorgestellt, darunter das Lesen von Textdaten, das Entfernen von Satzzeichen und Zahlen, die Wortsegmentierung, das Entfernen von Stoppwörtern, die Wortstammerkennung und die Kennzeichnung von Wortarten usw. Diese Techniken sind sehr nützlich und werden häufig in der Textverarbeitung eingesetzt. In praktischen Anwendungen können wir je nach Bedarf geeignete Techniken zur Textvorverarbeitung auswählen, um die Genauigkeit und Wirkung unserer Daten zu verbessern.


  1. ws

Das obige ist der detaillierte Inhalt vonTextvorverarbeitungstechniken in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage