2016-10-31 4 views
1

Ich versuche, einige Textdokumente zu vektorisieren, die ich habe. Vorbereitung für eine fit() - Methode.Vectorizer meine eigenen Textdaten

ich etwas ganz der Suche hätte auf diesem und auf Basis von allem, was ich sah, sieht aus wie das der richtige Code ist

from sklearn.feature_extraction.text import TfidfVectorizer 

filenames = ['aa.txt','bb.txt','cc.txt'] 

vectorizer = TfidfVectorizer() 

X = vectorizer.fit_transform(filenames) 

print ("feature names - ") 
print (vectorizer.get_feature_names()) 

erwarte ich die Worte in den Dateien als meine Funktion Namen zu sehen Aber statt hier ist das, was ich

feature names - 
['aa', 'bb', 'cc', 'txt'] 

sehe ich dies aus der Dokumentation sehen - „Wenn‚Dateiname‘, das als Argument übergibt Sequenz zu passen erwartet wird, eine Liste von Dateinamen zu sein, der die rohen holen müssen lesen Inhalt zu analysieren. "

Antwort

0

Die Standardoption für diesen Vektorisierer besteht darin, tatsächliche Textdaten zu akzeptieren, nicht Dateinamen - sie interpretiert sie als eine Liste von 3 "Sätzen" mit "Wörtern", die in Ihren Objektnamen angezeigt werden.

Wie in der netten Anleitung http://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.TfidfVectorizer.html zu sehen, sollten Sie es als TfidfVectorizer (Eingabe = 'Dateiname') initialisieren, um alles aus einer Datei zu lesen.

+0

Danke .. hatte gesehen, aber ich versuche, alle Dateien in einem Verzeichnis zu lesen ... Und versuchte, meinen Weg darauf zu arbeiten –