[英]Python: Using a list with TF-IDF
我有以下一段代碼,當前將“令牌”中的所有單詞與“ df”中的每個文檔進行比較。 有什么辦法可以將預定義的單詞列表與文檔(而不是“令牌”)進行比較。
from sklearn.feature_extraction.text import TfidfVectorizer
tfidf_vectorizer = TfidfVectorizer(norm=None)
list_contents =[]
for index, row in df.iterrows():
list_contents.append(' '.join(row.Tokens))
# list_contents = df.Content.values
tfidf_matrix = tfidf_vectorizer.fit_transform(list_contents)
df_tfidf = pd.DataFrame(tfidf_matrix.toarray(),columns= [tfidf_vectorizer.get_feature_names()])
df_tfidf.head(10)
任何幫助表示贊賞。 謝謝!
不確定我是否理解正確,但是如果您想讓Vectorizer考慮固定的單詞列表,則可以使用vocabulary
參數。
my_words = ["foo","bar","baz"]
# set the vocabulary parameter with your list of words
tfidf_vectorizer = TfidfVectorizer(
norm=None,
vocabulary=my_words)
list_contents =[]
for index, row in df.iterrows():
list_contents.append(' '.join(row.Tokens))
# this matrix will have only 3 columns because we have forced
# the vectorizer to use just the words foo bar and baz
# so it'll ignore all other words in the documents.
tfidf_matrix = tfidf_vectorizer.fit_transform(list_contents)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.