2017-07-07 74 views
0

我有一個語料庫(酒店點評),我想要做一些NLP過程,包括Tfidf。我的問題是,當我應用Tfidf並打印100個功能時,它不會顯示爲一個單詞,而是整個句子。 這裏是我的代碼:Tfidf向量不工作

注:clean_doc是一個函數返回我的陰莖從停用詞清理,制止和等

vectorizer = TfidfVectorizer(analyzer='word',tokenizer=clean_doc, 
max_features=100, lowercase = False, ngram_range=(1,3), min_df = 1) 
vz = vectorizer.fit_transform(list(data['Review'])) 
feature_names = vectorizer.get_feature_names() 
for feature in feature_names: 
    print(feature) 

返回是這樣的:

love view good room 
food amazing recommended 
bad services location far 
----- 

任何想法爲什麼?在此先感謝

+0

你能告訴我們你的clean_doc函數的代碼嗎? – yvespeirsman

回答

0

這很可能是您的clean_doc函數中的錯誤。 'tokenizer'參數應該是一個函數,它接受一個字符串作爲輸入並返回一個記號列表。

+0

你是對的。該函數以列表的形式返回數據。所以我糾正它。謝謝 :) –