对csv文件中的数据实现聚类操作,聚类中心个数取3
时间: 2024-02-10 13:11:01 浏览: 217
好的,以下是一个简单的 Python 代码实现针对 csv 文件的 K-means 聚类操作,聚类中心个数为 3:
import pandas as pd
import numpy as np
from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler
import matplotlib.pyplot as plt
# 加载数据
data = pd.read_csv('data.csv')
# 数据标准化
scaler = StandardScaler()
data_scaled = scaler.fit_transform(data)
# 训练模型
kmeans = KMeans(n_clusters=3)
kmeans.fit(data_scaled)
# 预测聚类标签
cluster_labels = kmeans.predict(data_scaled)
# 可视化聚类结果
plt.scatter(data_scaled[:, 0], data_scaled[:, 1], c=cluster_labels)
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], marker='*', s=200, c='#050505')
plt.show()
在上面的代码中,我们首先使用 Pandas 加载了一个名为 data.csv
的 csv 文件,然后使用 StandardScaler
对数据进行了标准化处理,使得每个特征的方差为 1,均值为 0。接着我们使用 KMeans
类对数据进行了聚类,聚类中心个数为 3。然后我们使用 predict
方法来预测数据点所属的聚类,最后使用 Matplotlib 可视化了聚类结果。在可视化结果中,我们使用黑色星号标记了聚类中心的位置。
需要注意的是,以上代码中的数据特征是二维的,如果你的 csv 文件中的数据特征不止两个,你需要相应地修改代码中的数据预处理和可视化部分。
相关推荐











