k-means python
时间: 2023-11-04 09:06:40 浏览: 51
k-means是一种常用的聚类算法,用于将数据集划分为k个不同的簇。在Python中,可以使用sklearn库中的KMeans类来实现k-means算法。该类的一些重要参数和方法包括:
- n_clusters:指定要生成的簇的数量。
- random_state:用于初始化选取k个向量的随机数种子。
- fit(X):对数据集X进行聚类。
- labels_:返回每个数据点所属的簇的标签。
- predict(X_new):预测新的数据点X_new所属的簇的标签。
- cluster_centers_:返回每个簇的中心。
以下是一个使用k-means算法对西瓜数据集进行聚类的简单示例:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
X = []
f = open('melons.txt', 'r')
for line in f:
X.append(np.array(line.split(' '), dtype=np.string_).astype(np.float64))
kmeans = KMeans(n_clusters=3, random_state=0).fit(X)
colors = ['red', 'green', 'blue']
for i, cluster in enumerate(kmeans.labels_):
plt.scatter(X[i][0], X[i][1], color=colors[cluster])
plt.show()
```
上面的代码将西瓜数据集分为3个簇,并用不同颜色标记了每个数据点所属的簇。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)