【发布时间】:2021-07-25 04:39:44
【问题描述】:
我是 Python 新手。我想对两个多元正态分布生成的样本执行 K 均值聚类。我生成了样本并执行了 K-means 聚类,但是当我想绘制聚类时出现错误。应该有一些我遗漏的尺寸问题。请在下面查看我的代码:
mean1 = [-1, -1.5]
cov1 = [[1, .2], [.2, 1]]
x1, y1 = np.random.default_rng().multivariate_normal(mean1, cov1, 100).T
mean2 = [1, 1.5]
cov2 = [[2, .1], [.1,2]]
x2, y2 = np.random.default_rng().multivariate_normal(mean2, cov2, 100).T
X = np.mat([x1,x2]).reshape(-1).transpose()
Y= np.mat([y1,y2]).reshape(-1).transpose()
kmeans = KMeans(n_clusters=2)
kmeans.fit(X)
y_kmeans = np.array(kmeans.predict(X))
plt.scatter(X[:, 0], X[:, 1], c=y_kmeans, s=50, cmap='viridis')
【问题讨论】:
-
您的意思是将您的数组与
X = np.mat([x1,x2]).reshape(-1).transpose()连接起来并得到一个包含200 个值的X吗? -
Y 应该是什么?
标签: python cluster-analysis k-means