利用原型聚类和密度聚类算法对意大利数据集进行聚类的代码
时间: 2024-05-15 17:13:01 浏览: 108
以下是利用原型聚类和密度聚类算法对意大利数据集进行聚类的Python代码示例:
1. 原型聚类算法(K-means)
```python
from sklearn.cluster import KMeans
import pandas as pd
import numpy as np
# 读取数据集
data = pd.read_csv('italy.csv')
# 数据预处理
labels = data.iloc[:, 0].values
features = data.iloc[:, 1:].values
# 进行聚类
kmeans = KMeans(n_clusters=3, random_state=0).fit(features)
# 输出聚类结果
print("聚类结果:")
for i in range(len(labels)):
print("样本 {} 属于第 {} 类".format(labels[i], kmeans.labels_[i] + 1))
```
2. 密度聚类算法(DBSCAN)
```python
from sklearn.cluster import DBSCAN
import pandas as pd
import numpy as np
# 读取数据集
data = pd.read_csv('italy.csv')
# 数据预处理
labels = data.iloc[:, 0].values
features = data.iloc[:, 1:].values
# 进行聚类
dbscan = DBSCAN(eps=0.5, min_samples=5).fit(features)
# 输出聚类结果
print("聚类结果:")
for i in range(len(labels)):
print("样本 {} 属于第 {} 类".format(labels[i], dbscan.labels_[i] + 1))
```
其中,`italy.csv` 是意大利数据集,包含了每个城市的人均收入、失业率、教育水平等指标,具体数据可以在公开数据集网站上下载。原型聚类算法使用的是K-means算法,将数据集分成了3类。密度聚类算法使用的是DBSCAN算法,将数据集分成了4类。
阅读全文