【发布时间】:2021-12-21 12:50:40
【问题描述】:
我已经缩放了我的原始数据 X1:
scaler = StandardScaler()
X1_scaled = pd.DataFrame(scaler.fit_transform(X1),columns = X1.columns)
然后进行k-means聚类:
kmeans = KMeans(
init="random",
n_clusters=3,
n_init=10,
max_iter=300,
random_state=123)
X1['label'] = kmeans.fit_predict(X1_scaled[['Wn', 'LL']])
# get centroids
centroids = kmeans.cluster_centers_
cen_x = [i[0] for i in centroids]
cen_y = [i[1] for i in centroids]
现在,我想绘制原始数据(X1)和质心,但是质心被缩放了,所以当我绘制结果时:
g = sns.scatterplot(x=X1.Wn, y= X1.LL, hue=X1.label,
data=X1, palette='colorblind',
legend='full')
g = sns.scatterplot(cen_x,cen_y,s=80,color='black')
质心在集群之外。 如何使用组和质心绘制原始数据?
这是我得到的图像:
这是我想要的,但使用原始数据而不是缩放数据:
【问题讨论】:
-
@JohanC 不,因为我需要原始比例的质心值,而不是我原来的 X(我有这个,因为我保留它并创建一个新的 X_scaled)。跨度>
标签: plot seaborn cluster-analysis k-means