怎么用k-means方法写代码
时间: 2024-11-22 21:43:32 浏览: 8
使用Python的scikit-learn库来实现K-means聚类方法,可以按照以下步骤编写代码:
```python
# 导入所需的库
from sklearn.cluster import KMeans
import pandas as pd
from sklearn.feature_extraction.text import CountVectorizer
# 假设你已经有了一个包含客户ID和商品分词数据的DataFrame df
# 示例数据:
# df = pd.DataFrame({'CustomerID': ['A001', 'A002', ..., 'Z999'],
# 'ProductKeywords': ['手机 手机壳', '电脑 键盘 笔记本', ...]})
# 数据预处理:分词和向量化
vectorizer = CountVectorizer(max_features=5) # 取最大5个特征
X = vectorizer.fit_transform(df['ProductKeywords'])
# 将数据转换为数值型
X = X.toarray()
# 设置k值(可以根据需要调整)
k = 3 # 这里假设我们要分成3类
# 初始化KMeans模型
kmeans = KMeans(n_clusters=k)
# 训练模型
kmeans.fit(X)
# 添加群组标签到原始数据
df['Cluster'] = kmeans.labels_
# 查看聚类结果
print(df.groupby('Cluster')['CustomerID'].count()) # 按群组计数客户数量
# 对每个群组进行进一步分析
```
这段代码首先创建了一个CountVectorizer用于文本特征提取,然后训练KMeans模型,最后将聚类结果添加回原始数据表中。别忘了在实际操作中替换数据集的名称和列名。
阅读全文