Menjelajahi vektor teks, bagian 2
Dengan menggunakan fungsi return_weights() yang Anda tulis pada latihan sebelumnya, sekarang Anda akan mengekstrak kata-kata teratas dari setiap dokumen dalam vektor teks, mengembalikan daftar indeks kata, dan menggunakan daftar tersebut untuk memfilter vektor teks hanya ke kata-kata teratas tersebut.
Latihan ini adalah bagian dari kursus
Prapemrosesan untuk Machine Learning di Python
Petunjuk latihan
- Panggil
return_weights()untuk mengembalikan kata-kata berbobot tertinggi untuk dokumen tersebut. - Panggil
set()padafilter_listyang dikembalikan untuk menghapus angka yang duplikat. - Panggil
words_to_filter, dengan meneruskan parameter berikut:vocabuntuk parametervocab,tfidf_vec.vocabulary_untuk parameteroriginal_vocab,text_tfidfuntuk parametervector, dan3untuk mengambiltop_n3 kata berbobot tertinggi dari setiap dokumen. - Terakhir, masukkan himpunan
filtered_wordske dalam sebuah list untuk digunakan sebagai filter bagi vektor teks.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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(____)]