我正在学习多标签分类,并尝试从scikit learning中实现tfidf教程。 我正在处理一个文本语料库来计算它的tf-idf分数。 为此,我使用了sklearn.feature_extraction.text模块。使用CountVectorizer和TfidfTransformer,我现在已经为每个词汇设置了语料库矢量化和tfidf。 问题是我现在有一个稀疏矩阵,比如:
(0, 47) 0.104275891915
(0, 383) 0.084129133023
.
.
.
.
(4, 308) 0.0285015996586
(4, 199) 0.0285015996586
我想把这个sparse.csr.csr_矩阵转换成一个列表列表,这样我就可以从上面的csr_矩阵中去掉文档id,得到tfidf和vocabularyId对,就像
47:0.104275891915 383:0.084129133023
.
.
.
.
308:0.0285015996586
199:0.0285015996586
有没有任何方法可以转换成列表列表,或者有任何其他方法可以更改格式以获取tfidf vocabularyId对?
我不知道
tf-idf
需要什么,但我可能可以帮助稀疏的结束。生成稀疏矩阵:
现在将其转换为
coo
格式。这已经是(我可以给random
一个格式参数)。在任何情况下,coo
格式的值都存储在3个数组中:看起来你想忽略
Mc.row
,并以某种方式加入其他人。例如作为字典:
或二维数组中的列:
(也是
np.array((Mc.col, Mc.data)).T
)或者只是数组列表
[Mc.col, Mc.data]
,或者列表列表[Mc.col.tolist(), Mc.data.tolist()]
,等等你能从那里拿走吗?
相关问题 更多 >
编程相关推荐