如何修改我的代码以使用SciKit Learn KMeans获取多功能数据集?

时间:2017-07-29 14:01:43

标签: python machine-learning scipy scikit-learn

我目前的下面是单一功能,我希望利用多达500个维度的数据。我不知道如何操纵x和y,或引入新的数组,以允许更多的功能。

我真正想要做的是拥有一个主要ID或行,并说出与此行最相似的行,它具有超过500列或功能。我可以操纵数组来做到这一点,还是有更好的方法来考虑这个?

import numpy as np
import matplotlib.pyplot as plt

from sklearn.cluster import KMeans

x = [1,5,1.5,8,1,9]
y = [2,8,1.8,8,0.6,11]

# plt.scatter(x,y)
# plt.show()

X = np.array( list(zip(x,y)) )
print(X)
kmeans = KMeans(n_clusters=2)
kmeans.fit(X)

centroids = kmeans.cluster_centers
labels = kmeans.labels

print(centroids)
print(labels)

colors = ["g.","r."]

for i in range(len(X)):
print("coordinate: ",X[i],"label: ",labels[i])
plt.plot(X[i][0],X[i][1], colors[labels[i]], markersize=10)

plt.scatter(centroids[:,0],centroids[:,1],marker ="x",s=150,linewidths=5,zorder=10)
plt.show()

0 个答案:

没有答案