Explorando vetores de texto, parte 2
Usando a função return_weights()
que você escreveu no exercício anterior, você agora extrairá as principais palavras de cada documento no vetor de texto, retornará uma lista dos índices de palavras e usará essa lista para filtrar o vetor de texto até essas palavras principais.
Este exercício faz parte do curso
Pré-processamento para aprendizado de máquina em Python
Instruções de exercício
- Chame
return_weights()
para retornar as palavras com maior peso para esse documento. - Ligue para
set()
nofilter_list
retornado para remover números duplicados. - Chame
words_to_filter
, passando os seguintes parâmetros:vocab
para o parâmetrovocab
,tfidf_vec.vocabulary_
para o parâmetrooriginal_vocab
,text_tfidf
para o parâmetrovector
e3
para obter astop_n
3 palavras ponderadas de cada documento. - Por fim, passe esse conjunto
filtered_words
para uma lista a ser usada como um filtro para o vetor de texto.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
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(____)]