您必须做一点点的歌舞才能将矩阵转换为numpy数组,但这应该可以满足您的需求:
feature_array = np.array(tfidf.get_feature_names())tfidf_sorting = np.argsort(response.toarray()).flatten()[::-1]n = 3top_n = feature_array[tfidf_sorting][:n]
这给了我:
array([u'fruit', u'travellers', u'jupiter'], dtype='<U13')
该
argsort电话确实是有用的,这里有它的文档。我们必须这样做,
[::-1]因为
argsort仅支持从小到大的排序。我们呼吁
flatten将维数减少到1d,以便可以使用排序后的索引来索引1d特征数组。请注意,
flatten仅当您一次测试一个文档时,包含to的调用才起作用。
另外,从另一个角度来说,您的意思是
tfs =tfidf.fit_transform(t.split("nn"))吗?否则,多行字符串中的每个术语都将被视为“文档”。使用nn代替意味着我们实际上正在查看4个文档(每行一个),这在您考虑tfidf时更有意义。



