Kom igångKom igång gratis

Utforska textvektorer, del 2

Med hjälp av funktionen return_weights() som du skrev i föregående övning ska du nu extrahera de viktigaste orden från varje dokument i textvektorn, returnera en lista med ordindex och använda den listan för att filtrera textvektorn till enbart dessa ord.

Den här övningen är en del av kursen

Förbehandling för maskininlärning i Python

Visa kurs

Övningsinstruktioner

  • Anropa return_weights() för att returnera de högst viktade orden för det dokumentet.
  • Anropa set() på den returnerade filter_list för att ta bort duplicerade nummer.
  • Anropa words_to_filter med följande parametrar: vocab för parametern vocab, tfidf_vec.vocabulary_ för parametern original_vocab, text_tfidf för parametern vector och 3 för att hämta de top_n 3 högst viktade orden från varje dokument.
  • Skicka slutligen in filtered_words-mängden som en lista för att använda som filter för textvektorn.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

def words_to_filter(vocab, original_vocab, vector, top_n):
    filter_list = []
    for i in range(0, vector.shape[0]):
    
        # Call the return_weights function and extend filter_list
        filtered = ____(vocab, original_vocab, vector, i, top_n)
        filter_list.extend(filtered)
        
    # Return the list in a set, so we don't get duplicate word indices
    return ____(filter_list)

# Call the function to get the list of word indices
filtered_words = ____(____, ____, ____, ____)

# Filter the columns in text_tfidf to only those in filtered_words
filtered_text = text_tfidf[:, list(____)]
Redigera och kör kod