我正在尝试使用python实现K-means聚类。我正在关注本教程https://jakevdp.github.io/PythonDataScienceHandbook/05.11-k-means.html
from sklearn.datasets.samples_generator import make_blobs
X, y_true = make_blobs(n_samples=300, centers=4,
cluster_std=0.60, random_state=0)
plt.scatter(X[:, 0], X[:, 1], s=50);
我有自定义数组X=[0.6,0.7,0.32,0.54......0.87]
如何在make_blobs函数中传递自定义数组?
答案 0 :(得分:0)
我假设你想对你的X数据进行聚类,而不是聚集用函数make_blobs()
生成的样本数据。 (我不能在评论中提问,因为我还没有声誉,这就是我直接回答的原因)
如果您想使用K-means聚类自己的数据,那么您应该看一下:sklearn.cluster.KMeans
首先,您需要创建一个numpy数组,可以创建一个numpy数组:
X=np.array([0.6,0.7,0.32,0.54......0.87])
然后您可以应用KMeans拟合和预测,如以下示例所示:
from sklearn.cluster import KMeans
import numpy as np
X = np.array([[1, 2], [1, 4], [1, 0], [4, 2], [4, 4], [4, 0]])
kmeans = KMeans(n_clusters=2, random_state=0).fit(X)
kmeans.predict([[0, 0], [4, 4]])
如果您想绘制数据,那么您可以查看更高级的示例,以便绘制plot_cluster_iris