Heim > Backend-Entwicklung > Python-Tutorial > Zählen Sie die Wortfrequenz in einer Datei mit Python

Zählen Sie die Wortfrequenz in einer Datei mit Python

Jennifer Aniston
Freigeben: 2025-03-06 11:59:11
Original
665 Leute haben es durchsucht

Dieses Tutorial zeigt, wie Sie das Hauptthema eines Dokuments schnell bestimmen, indem Sie die Wortfrequenz mithilfe von Python analysieren. Das manuelle Zählen von Wortvorkommen ist mühsam; Dieser automatisierte Ansatz vereinfacht den Prozess.

Wir verwenden eine Beispieltextdatei, test.txt (Laden Sie sie herunter, aber schauen Sie nicht!), Um zu veranschaulichen. Ziel ist es, das Thema des Tutorials anhand der Wortfrequenz zu erraten.

Verständnis regulärer Ausdrücke

Dieser Prozess verwendet reguläre Ausdrücke (REGEX). Wenn sie unbekannt sind, ist ein Regex eine Zeichensequenz, die ein Suchmuster für die String -Matching definiert (wie "Finden und Ersetzen"). Für einen tieferen Tauchgang finden Sie ein dediziertes Regex -Tutorial.

Erstellen des Programms

  1. Lesen Sie die Datei: Das Programm beginnt mit dem Lesen der Textdatei in eine Zeichenfolge:

    document_text = open('test.txt', 'r')
    text_string = document_text.read().lower()
    Nach dem Login kopieren
  2. Regelmäßiger Ausdruck: a Regex filtert Wörter mit 3 bis 15 Zeichen:

    match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)
    Nach dem Login kopieren
  3. Wortfrequenz: Ein Wörterbuch verfolgt die Wortfrequenzen:

    frequency = {}
    for word in match_pattern:
        count = frequency.get(word, 0)
        frequency[word] = count + 1
    Nach dem Login kopieren
  4. Ausgabe: Das Programm druckt dann jedes Wort und seine Frequenz:

    frequency_list = frequency.keys()
    for word in frequency_list:
        print(word, frequency[word])
    Nach dem Login kopieren

Vollständiges Programm

Hier ist der kombinierte Python -Code:

import re

frequency = {}
document_text = open('test.txt', 'r')
text_string = document_text.read().lower()
match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)

for word in match_pattern:
    count = frequency.get(word, 0)
    frequency[word] = count + 1

frequency_list = frequency.keys()
for word in frequency_list:
    print(word, frequency[word])
Nach dem Login kopieren

Ausführen Dies gibt eine Wortfrequenzliste aus. Das häufigste Wort weist auf das Thema des Original -Tutorials hin.

Counting Word Frequency in a File Using Python

Bearbeitung größerer Textdateien

Für größere Dateien vereinfacht das Sortieren des Frequenzwörterbuchs das Finden der häufigsten Wörter:

import re

frequency = {}
document_text = open('dracula.txt', 'r')  # Example: dracula.txt
text_string = document_text.read().lower()
match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)

for word in match_pattern:
    count = frequency.get(word, 0)
    frequency[word] = count + 1

most_frequent = dict(sorted(frequency.items(), key=lambda elem: elem[1], reverse=True))
most_frequent_count = most_frequent.keys()

for word in most_frequent_count:
    print(word, most_frequent[word])
Nach dem Login kopieren

Dies gibt eine sortierte Liste aus, wobei die häufigsten Wörter zuerst angezeigt werden.

Counting Word Frequency in a File Using Python

Ausschließen gemeinsamer Wörter

Um die Analyse zu verfeinern, schließen Sie gemeinsame Wörter wie "The" und, "usw. mit einer schwarzen Liste aus:

import re

frequency = {}
document_text = open('dracula.txt', 'r')
text_string = document_text.read().lower()
match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)

blacklisted = ['the', 'and', 'for', 'that', 'which']

for word in match_pattern:
    if word not in blacklisted:
        count = frequency.get(word, 0)
        frequency[word] = count + 1

most_frequent = dict(sorted(frequency.items(), key=lambda elem: elem[1], reverse=True))
most_frequent_count = most_frequent.keys()

for word in most_frequent_count:
    print(word, most_frequent[word])
Nach dem Login kopieren

Dies liefert eine fokussiertere Analyse.

Counting Word Frequency in a File Using Python

Dieses erweiterte Python -Skript bietet eine robuste Methode zur Analyse von Text und zur Identifizierung von Schlüsselthemen basierend auf der Worthäufigkeit. Denken Sie daran, die Kriterien der schwarzen Liste und der Wortlänge an Ihre spezifischen Anforderungen anzupassen.

Das obige ist der detaillierte Inhalt vonZählen Sie die Wortfrequenz in einer Datei mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage