Word_token twitter Daten - Python, Python-3.x, Nltk

Ich versuche, die englischen Wörter nur aus der Textdatei für ein einfaches Wortfrequenzziel zu bekommen. Wie kann ich die anderen Strings in der Liste herausfiltern?

from nltk.tokenize import word_tokenize
words = word_tokenize(message.replace("n"," "))

print(words)

Ausgabe wie folgt geben:

["Amazon", "b", "maji_opai", "am\xcd\x9ca\xcd\x89zon\xe2\x80\xa6", "\xcb\x99\xea\x92\xb3\xe2\x80\x8b\xcb\x99", "Amazon", "b"RT", "WorkingGIrl", "For", "people", "love", "REAL", "paperbacks", "THE", "PARIS", "EFFECT", "10", "right", "https", "//", "https", "Amazon", "b"RT", "AbsentiaSeries", "ABSENTIA", "IS", "HERE", "\xf0\x9f\x91\x81", "\xf0\x9f\x91\x81", "\xf0\x9f\x91\x81", "\xf0\x9f\x91\x81", "\xf0\x9f\x91\x81", "US", "UK", "Australia", "Germany", "Ireland", "Italy", "Netherlands", "go", "https", "Amazon", "b"RT",

Antworten:

0 für die Antwort № 1

Sie können ein einfaches Listenverständnis verwenden, wenn Sie eine bestimmte Liste von Wörtern haben, die Sie suchen:

words = word_tokenize(message.replace("n"," "))
word_list = ["amazon", "b"]
filtered_words = [x for x in words if x in word_list]

Wenn Sie Python häufig verwenden, sollten Sie sich mit dem Verständnis der Liste beschäftigen, es wird viel auftauchen

Erklärung, wie Listenverständnis funktioniert?

http://www.pythonforbeginners.com/basics/list-comprehensions-in-python


0 für die Antwort № 2

Es gibt einen handgemachten Tweet Tokenizer in nltk:

>>> from nltk.tokenize import TweetTokenizer
>>> tt = TweetTokenizer()
>>> tweet = "Thanks to the historic TAX CUTS that I signed into law, your paychecks are going way UP, your taxes are going way DOWN, and America is once again OPEN FOR BUSINESS! #FakeNews"
>>> tt.tokenize(tweet)
["Thanks", "to", "the", "historic", "TAX", "CUTS", "that", "I", "signed", "into", "law", ",", "your", "paychecks", "are", "going", "way", "UP", ",", "your", "taxes", "are", "going", "way", "DOWN", ",", "and", "America", "is", "once", "again", "OPEN", "FOR", "BUSINESS", "!", "#FakeNews"]