Heim  >  Artikel  >  Backend-Entwicklung  >  Wie zähle ich die Worthäufigkeit und sortiere nach Häufigkeit in Python?

Wie zähle ich die Worthäufigkeit und sortiere nach Häufigkeit in Python?

Barbara Streisand
Barbara StreisandOriginal
2024-10-21 21:39:03830Durchsuche

How to Count Word Frequency and Sort by Frequency in Python?

Worthäufigkeit zählen und nach Häufigkeit sortieren

Bei der Arbeit mit großen Datensätzen, die Textdaten enthalten, ist es oft notwendig, die Häufigkeit einzelner Wörter zu analysieren . Diese Informationen können für verschiedene Aufgaben der Verarbeitung natürlicher Sprache (NLP) verwendet werden. In Python kann diese Aufgabe mit einem leistungsstarken Tool namens Counter vereinfacht werden.

Implementierung des Designs

Ihr Design beschreibt die folgenden Schritte:

  1. Erstellen Sie eine leere Liste zum Speichern eindeutiger Wörter (newlst).
  2. Erstellen Sie eine leere Liste zum Speichern entsprechender Worthäufigkeiten (Häufigkeit).
  3. Durchlaufen Sie die ursprüngliche Wortliste.
  4. Überprüfen Sie für jedes Wort, ob es bereits in Newlst enthalten ist.
  5. Wenn das Wort nicht in Newlst enthalten ist, fügen Sie es hinzu und stellen Sie die Häufigkeit auf 1 ein.
  6. Wenn das Wort bereits in Newlst enthalten ist , erhöhen Sie die Häufigkeit.
  7. Sortieren Sie Nachrichten basierend auf der Häufigkeitsliste.

Verwenden von Counter in Python

Das Sammlungsmodul von Python bietet eine spezielle Funktion Klasse namens Counter, die zum Zählen und Aggregieren von Elementen in Iterables konzipiert ist. Mit Counter können wir die Schritte 3 bis 6 in einer einzigen Codezeile ausführen. So können Sie Ihr Design mit Counter umsetzen:

<code class="python">from collections import Counter

# Create a Counter from the list of words
counts = Counter(original_list)

# Sort the keys (unique words) based on their frequencies
sorted_words = sorted(counts.keys(), key=lambda x: counts[x], reverse=True)</code>

Dieser Code generiert eine sortierte Liste eindeutiger Wörter, wobei das Wort mit der höchsten Häufigkeit zuerst erscheint.

Beispiel

<code class="python">list1 = ['the', 'car', 'apple', 'banana', 'car', 'apple']
counts = Counter(list1)
print(counts)  # Counter({'apple': 2, 'car': 2, 'banana': 1, 'the': 1})
sorted_words = sorted(counts.keys(), key=lambda x: counts[x], reverse=True)
print(sorted_words)  # ['apple', 'car', 'banana', 'the']</code>

Das obige ist der detaillierte Inhalt vonWie zähle ich die Worthäufigkeit und sortiere nach Häufigkeit in Python?. 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