Python文本聚类代码示例:使用KMeans算法
以下是一个简单的文本聚类代码,使用KMeans算法:
import numpy as np
from sklearn.cluster import KMeans
from sklearn.feature_extraction.text import TfidfVectorizer
# 读取文本数据
with open('text_data.txt', 'r') as f:
texts = f.readlines()
# 创建TfidfVectorizer对象,用于将文本转换为向量
vectorizer = TfidfVectorizer(stop_words='english')
X = vectorizer.fit_transform(texts)
# 使用KMeans算法进行聚类
k = 5 # 聚成5类
model = KMeans(n_clusters=k, init='k-means++', max_iter=100, n_init=1)
model.fit(X)
# 输出聚类结果
for i in range(k):
print(f'Cluster {i+1}:')
cluster_texts = [texts[j] for j in np.where(model.labels_ == i)[0]]
print(''.join(cluster_texts))
其中,'text_data.txt'是包含多条文本的文件,每条文本占一行。首先使用'TfidfVectorizer'将文本转换为向量,然后使用'KMeans'算法进行聚类,最终输出聚类结果。
原文地址: https://www.cveoy.top/t/topic/jAG5 著作权归作者所有。请勿转载和采集!