gpt4 book ai didi

python - 基于kmeans聚类中心绘制边界线

转载 作者:行者123 更新时间:2023-12-05 04:06:48 27 4
gpt4 key购买 nike

我是 scikit learn 的新手,但想尝试一个有趣的项目。

我有英国各点的经度和纬度,我曾使用 scikit 学习 KMeans 类来创建聚类中心。为了可视化这些数据,而不是将点作为集群,我想在每个集群周围绘制边界。例如,如果一个集群是伦敦,另一个集群是牛津,我目前在每个城市的中心都有一个点,但我想知道是否有一种方法可以使用这些数据来创建基于我的集群的边界线?

到目前为止,这是我创建集群的代码:

import pandas as pd
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans

location1="XXX"
df = pd.read_csv(location1, encoding = "ISO-8859-1")

#Run kmeans clustering
X = df[['long','lat']].values #~2k locations in the UK
y=df['label'].values #Label is a 0 or 1
kmeans = KMeans(n_clusters=30, random_state=0).fit(X, y)
centers=kmeans.cluster_centers_
plt.scatter(centers[:,0],centers[:,1], marker='s', s=100)

所以我希望能够将上例中的中心转换为划分每个区域的线——这可能吗?

谢谢,

阿南特

最佳答案

我猜您是在谈论空间边界,在这种情况下,您应该遵循 Bunyk 的建议并使用 Voronoi 图 [ 1 ].这是您可以实现的实际演示:http://nbviewer.jupyter.org/gist/pv/8037100 .

关于python - 基于kmeans聚类中心绘制边界线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49347738/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com