TfIdf na danych o nastrojach pasażerów linii lotniczych z Twittera
Teraz zbudujesz cechy metodą TfIdf, kontynuując pracę z zestawem danych tweets.
W tym ćwiczeniu wykorzystasz wiedzę z poprzednich lekcji: usuniesz stop words, zastosujesz wzorzec tokenów i określisz n-gramy.
Wynikiem końcowym będzie DataFrame, którego kolumny są tworzone za pomocą TfidfVectorizer(). Taki DataFrame można bezpośrednio przekazać do modelu uczenia nadzorowanego – właśnie tym zajmiemy się w następnym rozdziale.
To ćwiczenie jest częścią kursu
Analiza sentymentu w Pythonie
Instrukcje do ćwiczenia
- Zaimportuj pakiet potrzebny do zbudowania
TfidfVectorizerorazENGLISH_STOP_WORDS. - Zbuduj wektoryzator TfIdf na kolumnie
textzestawu danychtweets, określając uni- i bi-gramy jako wybór n-gramów, tokeny zawierające wyłącznie znaki alfanumeryczne przy użyciu podanego wzorca tokenów oraz stop words odpowiadająceENGLISH_STOP_WORDS. - Przekształć wektoryzator, wskazując tę samą kolumnę, na której wykonano dopasowanie.
- Podaj nazwy kolumn w funkcji
DataFrame().
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Import the required vectorizer package and stop words list
____
# Define the vectorizer and specify the arguments
my_pattern = r'\b[^\d\W][^\d\W]+\b'
vect = ____(____=(1, 2), max_features=100, ____=my_pattern, ____=ENGLISH_STOP_WORDS).fit(tweets.text)
# Transform the vectorizer
X_txt = vect.____(____.____)
# Transform to a data frame and specify the column names
X=pd.DataFrame(X_txt.toarray(), columns=____.____)
print('Top 5 rows of the DataFrame: ', X.head())