写一段代码,用python写k聚类,写个例子
时间: 2024-10-01 14:10:47 浏览: 21
K-means聚类算法介绍与利用python实现的代码示例
当然可以。这里是一个简单的例子,我们将使用Python的sklearn库中的KMeans算法来实现K-Means聚类。首先确保已经安装了`sklearn`,如果没有,可以通过pip安装:
```bash
pip install scikit-learn
```
然后,我们可以创建一个简单的二维数据集,并运行KMeans算法:
```python
# 导入所需的库
from sklearn.cluster import KMeans
import numpy as np
# 创建随机生成的数据集 (假设我们有100个样本,每个样本有两个特征)
n_samples = 100
random_state = 42
X = np.random.rand(n_samples, 2)
# 定义K值,这里是3个簇
n_clusters = 3
# 初始化并训练KMeans模型
kmeans = KMeans(n_clusters=n_clusters, random_state=random_state)
kmeans.fit(X)
# 获取聚类标签
labels = kmeans.labels_
# 打印前5个样本的聚类结果
print("Cluster labels for the first 5 samples:", labels[:5])
# 可视化聚类结果(如果你需要的话)
import matplotlib.pyplot as plt
plt.scatter(X[:, 0], X[:, 1], c=labels, cmap='viridis')
centers = kmeans.cluster_centers_
plt.scatter(centers[:, 0], centers[:, 1], color='red', marker='x', s=300)
plt.xlabel('Feature 1')
plt.ylabel('Feature 2')
plt.title(f"KMeans Clustering with {n_clusters} clusters")
plt.show()
```
在这个例子中,我们首先生成了一个二维数据集,然后通过`KMeans`对象对数据进行了聚类,并得到了每个样本所属的簇。最后,我们可以可视化聚类的结果。
阅读全文