我在python中有一组向量,构成我的知识库,例如:
PS C:\Windows\system32> $ROW = Select-RowFromCSV -CSV (Import-Csv "C:\scripts\csv.csv")
select row # from CSV: 0
PS C:\Windows\system32> $ROW
Name Phone
Dan 111111
Dave 5555555
Oliver 666666
Dan 111111
PS C:\Windows\system32>
现在我使用以下方法计算了KB的集群:
KB=[[1,2,3,4],[1,2,2,1],[4,3,1,2],[5,4,3,5]]
现在我有一个新条目(我可以有多个),
from sklearn.cluster import KMeans
model=KMeans(n_clusters=3)
model.fit(KB)
我知道哪个是最适合 A 的集群,而不是上面计算的集群,然后利用KB。
你能帮帮我吗?
提前致谢
答案 0 :(得分:1)
你在这里:
KB=[[1,2,3,4],[1,2,2,1],[4,3,1,2],[5,4,3,5]]
from sklearn.cluster import KMeans
model=KMeans(n_clusters=3).fit(KB)
A=[3,2,1,3]
l = model.predict([A])
print model.labels_, l
centers = model.cluster_centers_.copy()
print centers
为了让你的模型变得'合适',我加入两行。 然后我使用方法预测来预测。 我还打印了模型中使用的每个示例的标签。
修改添加情节
import matplotlib.pyplot as plt
import numpy
# Compute the distances vector to vector
d = numpy.array([[numpy.sum(KBi - cj) for KBi in KB] for cj in centers])
print d
# for cluster 0 and 1
plt.scatter(d[0], d[1])
plt.pause(10)