以下是tf-idf中文文本向量化代码和k-means聚类代码,并将聚类结果保存至文档中:

import jieba
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.cluster import KMeans

# 读取文本数据
with open('chinese_text.txt', 'r', encoding='utf-8') as f:
    text_data = f.readlines()

# 分词
seg_data = []
for text in text_data:
    seg_text = jieba.cut(text.strip())
    seg_data.append(' '.join(seg_text))

# tf-idf向量化
vectorizer = TfidfVectorizer()
tfidf_data = vectorizer.fit_transform(seg_data)

# k-means聚类
k = 3
km = KMeans(n_clusters=k, random_state=0)
km.fit(tfidf_data)

# 保存聚类结果
cluster_result = km.labels_
with open('cluster_result.txt', 'w', encoding='utf-8') as f:
    for i in range(len(text_data)):
        f.write(text_data[i].strip() + '\t' + str(cluster_result[i]) + '\n')

注意:在执行代码前需要先安装jieba库和sklearn库。运行结果将保存到当前目录下的cluster_result.txt文件中,每行表示原始文本和所属聚类编号。

tf-idf中文文本向量化代码再进行k-means聚类并把聚类结果保存至一个文档中

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

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