用glass数据集去进行层次聚类,降维,画图
时间: 2024-01-10 14:04:32 浏览: 96
下面是一个使用glass数据集进行层次聚类、降维和可视化的Python代码示例:
```python
import pandas as pd
import numpy as np
from sklearn.cluster import AgglomerativeClustering
from sklearn.decomposition import PCA
import matplotlib.pyplot as plt
# 加载glass数据集
glass = pd.read_csv('glass.csv')
# 提取特征和标签
X = glass.drop('Type', axis=1)
y = glass['Type']
# 进行层次聚类
clustering = AgglomerativeClustering(n_clusters=6).fit(X)
# 进行PCA降维
pca = PCA(n_components=2)
X_pca = pca.fit_transform(X)
# 绘制散点图
plt.scatter(X_pca[:, 0], X_pca[:, 1], c=clustering.labels_)
plt.xlabel('PCA Component 1')
plt.ylabel('PCA Component 2')
plt.title('Agglomerative Clustering with Glass Dataset')
plt.show()
```
上面的代码使用`pandas`库加载glass数据集,并提取特征和标签。然后使用`AgglomerativeClustering`类进行层次聚类,聚类数量被设置为6。接着使用`PCA`类进行降维,将数据降到2维。最后,使用`matplotlib`库绘制散点图,横轴和纵轴分别为PCA的第1和第2个主成分,点的颜色代表属于哪个簇。运行代码后,就会看到绘制出来的散点图。
阅读全文