Python 如何正确使用TfidfVectorizer?
在kmeans群集中使用TFIDFvectorier时,我总是出错 有3种情况:Python 如何正确使用TfidfVectorizer?,python,scikit-learn,k-means,tf-idf,Python,Scikit Learn,K Means,Tf Idf,在kmeans群集中使用TFIDFvectorier时,我总是出错 有3种情况: 我使用TfidfVectorizer中的tokenizer参数为我的数据集定制标记化过程。这是我的密码: vectorizer=TfidfVectorizer(stop\u words=stops,tokenizer=tokenize) X=矢量器。拟合变换(标题) 但是我得到了这个错误: ValueError: empty vocabulary; perhaps the documents only contai
tokenizer
参数为我的数据集定制标记化过程。这是我的密码:
vectorizer=TfidfVectorizer(stop\u words=stops,tokenizer=tokenize)
X=矢量器。拟合变换(标题)
ValueError: empty vocabulary; perhaps the documents only contain stop words
vectorizer=TfidfVectorizer(stop\u words=stops,tokenizer=tokenize,词汇=vocab)
ValueError: Vocabulary contains repeated indices.
vectorizer=TfidfVectorizer(停止\u单词=停止)
X=矢量器。拟合变换(标题)
术语=矢量器。获取特征名称()
真k=8
model=KMeans(n_clusters=true_k,init='k-means++',max_iter=100,n_init=1)
模型拟合(X)
打印“每个群集的顶级术语:”
order_centroids=model.cluster_centers_u.argsort()[:,:-1]
对于范围内的i(真k):
打印“群集%d:”%i,
对于按质心[i,:10]顺序排列的ind:
打印“%s”%terms[ind],
打印
集群0:班根、兰康、卢纳克、佩朗卡特、阿皮卡西、贝贝巴斯、孟古纳坎、服务、sistem、彭班古南、,
集群1:sistem、aplikasi、berbasis、web、menggunakan、pembuatan、mobile、informasi、teknologi、Pengebangan、,
集群2:android、berbasis、aplikasi、perangkat、rancang、bangun、bergerak、mobile、sosial、menggunakan、,
集群3:实施、算法、蒙古纳坎、克拉西菲卡西、数据、游戏、模糊、向量、支持、机器、,
集群4:metode、menggunakan、video、penerapan、implementasi、隐写术、pengenalan、berbasis、文件、分析、,
集群5:citra、segmentasi、menggunakan、implementasi、metode、warna、tekstur、kembali、berwarna、temu、,
集群6:jaringan、tiruan、protokol、voip、syaraf、saraf、menggunakan、implementasi、kinerja、流媒体、,
集群7:studi、kasus、its、informatika、teknik、sistem、informasi、data、泗水、jurusan,
一些术语被聚集到多个集群中,例如术语数据
被放置到集群3和集群7中
您能告诉我如何正确使用
TFIDFvectorier
和KMeans
吗?你的帮助就是我的幸福:)也许你的发音在第二步中包含了重复的值。你可以停止脱胶,并尝试清理它们。也许你的发音确实包含步骤2的重复值。你可以停止脱胶,并尝试清理它们。