Czyszczenie danych tekstowych
Po zdefiniowaniu stopwords i znaków interpunkcyjnych użyjemy ich, aby wyczyścić e-maile z Enrona w ramce danych df. Listy stopwords i znaków interpunkcyjnych są dostępne pod nazwami stop i exclude. Przed uzyskaniem oczyszczonych danych trzeba wykonać jeszcze kilka kroków, takich jak "lematyzacja" słów oraz stemming czasowników. Czasowniki w danych e-mailowych są już poddane stemmingowi, a lematyzacja została wykonana za ciebie w tym ćwiczeniu.
To ćwiczenie jest częścią kursu
Wykrywanie oszustw w Pythonie
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Import the lemmatizer from nltk
from nltk.stem.wordnet import WordNetLemmatizer
lemma = WordNetLemmatizer()
# Define word cleaning function
def clean(text, stop):
text = text.____()
# Remove stopwords
stop_free = " ".join([word for word in text.lower().split() if ((___ not in ___) and (not word.isdigit()))])
# Remove punctuations
punc_free = ''.join(word for word in stop_free if ___ not in ____)
# Lemmatize all words
normalized = " ".join(____.____(word) for word in punc_free.split())
return normalized