2017-07-07 10 views
0

Ich habe einen Korpus (Hotel Reviews) und ich möchte einige NLP-Prozess einschließlich Tfidf tun. Mein Problem ist, wenn ich Applied Tfidf und Print 100 Features nicht als einzelnes Wort sondern als ganzen Satz vorstelle. Hier ist mein Code:Tfidf Vectorizer funktioniert nicht

Hinweis: clean_doc ist eine Funktion, mein Korpus aus Stoppwörter Reinigung zurückkehren, ergeben, und etc

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) 

es so etwas wie dies zurück:

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

jede Idee warum? Vielen Dank im Voraus

+0

Können Sie uns den Code für Ihre clean_doc-Funktion zeigen? – yvespeirsman

Antwort

0

Es ist höchstwahrscheinlich ein Fehler in Ihrer clean_doc Funktion. Das Tokenizer-Argument sollte eine Funktion sein, die eine Zeichenfolge als Eingabe verwendet und eine Liste von Token zurückgibt.

+0

Sie haben Recht. Die Funktion hat die Daten als Liste der Liste zurückgegeben. also korrigiere ich es. Vielen Dank :) –

Verwandte Themen