利用k-means算法对UCI数据库中wine数据集聚类的代码
时间: 2024-02-22 17:58:37 浏览: 79
k-means算法代码
以下是利用k-means算法对UCI数据库中wine数据集聚类的Python代码:
```python
import pandas as pd
from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler
# 读取数据集
data = pd.read_csv('wine.data', header=None)
data.columns = ['class', 'Alcohol', 'Malic acid', 'Ash', 'Alcalinity of ash', 'Magnesium', 'Total phenols',
'Flavanoids', 'Nonflavanoid phenols', 'Proanthocyanins', 'Color intensity', 'Hue',
'OD280/OD315 of diluted wines', 'Proline']
# 分离特征和标签
X = data.iloc[:, 1:].values
y = data.iloc[:, 0].values
# 标准化特征
scaler = StandardScaler()
X = scaler.fit_transform(X)
# 聚类
kmeans = KMeans(n_clusters=3, random_state=0).fit(X)
# 输出聚类结果
print(kmeans.labels_)
```
其中,'wine.data'是wine数据集的文件名。在代码中,先用Pandas库读取数据集,然后将特征和标签分离。接着,使用StandardScaler将特征进行标准化处理。最后使用sklearn库中的KMeans算法进行聚类。聚类时选择3个簇,输出聚类结果。
阅读全文