以下是一个简单的文本聚类代码,使用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'算法进行聚类,最终输出聚类结果。

Python文本聚类代码示例:使用KMeans算法

原文地址: https://www.cveoy.top/t/topic/jAG5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录