k-means经纬度聚类python
时间: 2023-08-01 20:13:56 浏览: 219
对于经纬度聚类,你可以使用k-means算法来实现。以下是一个使用Python的示例代码:
```python
import numpy as np
from sklearn.cluster import KMeans
# 创建经纬度数据
data = np.array([[39.9833, 116.3667],
[31.2001, 121.5000],
[23.1291, 113.2644],
[22.5431, 114.0579],
[30.5728, 104.0668],
[39.9042, 116.4074],
[31.2304, 121.4737],
[22.3080, 113.9185],
[30.6636, 104.0729]])
# 定义k值
k = 3
# 使用k-means算法进行聚类
kmeans = KMeans(n_clusters=k, random_state=0).fit(data)
# 获取聚类结果
labels = kmeans.labels_
# 打印每个样本的聚类结果
for i in range(len(data)):
print("经度: {}, 纬度: {},聚类结果: {}".format(data[i][0], data[i][1], labels[i]))
```
在这个示例代码中,我们使用了`numpy`库来创建经纬度数据,并使用`sklearn`库中的`KMeans`类进行聚类。通过指定`n_clusters`参数来设定k值,然后调用`fit()`方法进行聚类。最后,我们可以通过`.labels_`属性获取每个样本的聚类结果,并打印出来。
请注意,这只是一个简单的示例。在实际应用中,你可能需要先对经纬度数据进行预处理和特征工程,以便更好地应用k-means算法。
阅读全文