Python K-означает кластеры вместо центроидов с Matplotlib - PullRequest
0 голосов
/ 04 декабря 2018

Я пытаюсь построить ак средства классификации.Код работает хорошо, чтобы идентифицировать кластер (не рисуя их), и он действительно строит центроиды; Я пытаюсь построить визуализацию кластера: но у меня есть трудности для его реализации вэтот код

Что должно быть в plt.scatter для построения k означает кластеры (а не центроиды)?

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.cluster import KMeans
from sklearn.metrics import adjusted_rand_score


import csv
from sklearn.metrics import accuracy_score
import csv
import matplotlib.pyplot as plt



documents = [line.strip() for line in open("internetsheet2.csv", 'r')]

vectorizer = TfidfVectorizer(stop_words='english')
X = vectorizer.fit_transform(documents)
true_k = 3
model = KMeans(n_clusters=true_k, init='k-means++', max_iter=100, n_init=1)
model.fit(X)

print("Top terms per cluster:")
order_centroids = model.cluster_centers_.argsort()[:, ::-1]
terms = vectorizer.get_feature_names()
for i in range(true_k):
    print("Cluster %d:" % i),
    for ind in order_centroids[i, :10]:
        print(' %s' % terms[ind]),
    print



print("\n")


centroids = model.cluster_centers_
transformed_centroids = model.fit_transform(centroids)
plt.scatter(transformed_centroids[:, 0], transformed_centroids[:, 1], marker='x')
plt.show()
...