IniziaInizia gratis

Esplorare i vettori di testo, parte 2

Usando la funzione return_weights() che hai scritto nell'esercizio precedente, ora estrarrai le parole principali da ciascun documento nel vettore di testo, restituirai un elenco degli indici delle parole e userai quell'elenco per filtrare il vettore di testo mantenendo solo quelle parole principali.

Questo esercizio fa parte del corso

Preprocessing per il Machine Learning in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Chiama return_weights() per ottenere le parole con peso maggiore per quel documento.
  • Chiama set() sul filter_list restituito per rimuovere i numeri duplicati.
  • Chiama words_to_filter, passando questi parametri: vocab per il parametro vocab, tfidf_vec.vocabulary_ per il parametro original_vocab, text_tfidf per il parametro vector e 3 per ottenere le top_n 3 parole con peso maggiore da ciascun documento.
  • Infine, passa quell'insieme filtered_words in una lista da usare come filtro per il vettore di testo.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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(____)]
Modifica ed esegui il codice