Chciałbym wykreślić wykres 2d z osi X jako termin i oś Y jako wynik TFIDF (lub identyfikator dokumentu) dla mojej listy zdań. Użyłem scikit learn's fit_transform(), aby uzyskać matrycę scipy, ale nie wiem, jak użyć tej macierzy do wykreślenia wykresu. Próbuję uzyskać spisek, aby zobaczyć, jak dobrze moje zdania można sklasyfikować za pomocą kmeans.wykreślić dokument tfidf 2D wykres
Oto wyjściowy fit_transform(sentence_list)
:
(id dokument, numer termin) tfidf zdobyć
(0, 1023) 0.209291711271
(0, 924) 0.174405532933
(0, 914) 0.174405532933
(0, 821) 0.15579574484
(0, 770) 0.174405532933
(0, 763) 0.159719994016
(0, 689) 0.135518787598
Oto mój kod:
sentence_list=["Hi how are you", "Good morning" ...]
vectorizer=TfidfVectorizer(min_df=1, stop_words='english', decode_error='ignore')
vectorized=vectorizer.fit_transform(sentence_list)
num_samples, num_features=vectorized.shape
print "num_samples: %d, num_features: %d" %(num_samples,num_features)
num_clusters=10
km=KMeans(n_clusters=num_clusters, init='k-means++',n_init=10, verbose=1)
km.fit(vectorized)
PRINT km.labels_ # Returns a list of clusters ranging 0 to 10
Dzięki
wykonuje następujące prace dla Ciebie? Powinno to wyglądać, gdy patrzysz tylko na prosty wykres 2D. http://matplotlib.org/examples/pylab_examples/simple_plot.html –