kmeans聚类算法python实现文本聚类
时间: 2024-01-06 07:25:20 浏览: 127
kmeans聚类算法python实现
以下是使用Python实现文本聚类的K-means算法的示例代码:
```python
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.cluster import KMeans
# 假设有一个文本数据集,存储在一个列表中
text_data = [
"This is the first document.",
"This document is the second document.",
"And this is the third one.",
"Is this the first document?"
]
# 将文本数据转换为TF-IDF特征向量
vectorizer = TfidfVectorizer()
tfidf_matrix = vectorizer.fit_transform(text_data)
# 使用K-means算法进行聚类
k = 2 # 设置聚类的簇数
kmeans = KMeans(n_clusters=k)
kmeans.fit(tfidf_matrix)
# 输出每个文本所属的聚类簇
for i, text in enumerate(text_data):
cluster_label = kmeans.labels_[i]
print(f"Text: {text}\tCluster: {cluster_label}")
# 输出每个聚类簇的中心点
for i, center in enumerate(kmeans.cluster_centers_):
print(f"Cluster {i} center: {center}")
```
这段代码使用了`sklearn`库中的`TfidfVectorizer`和`KMeans`类来实现文本聚类的K-means算法。首先,将文本数据集转换为TF-IDF特征向量表示。然后,使用K-means算法对特征向量进行聚类,将文本分为指定数量的簇。最后,输出每个文本所属的聚类簇以及每个聚类簇的中心点。
阅读全文