当我使用以下代码时:
from sklearn.feature_extraction.text import CountVectorizer
X = dataset.Tweet
y = dataset.Type
count_vect = CountVectorizer()
BoW = count_vect.fit_transform(X)
它返回术语频率文档作为稀疏矩阵。
我发现了如何获取稀疏矩阵的数据,索引和indptr。
我的问题是如何获取列的名称(应该是要素还是单词)?
最佳答案
您要使用的是vectorizer.get_feature_names()
。这是文档中的一个示例:
from sklearn.feature_extraction.text import CountVectorizer
corpus = [
'This is the first document.',
'This document is the second document.',
'And this is the third one.',
'Is this the first document?',
]
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(corpus)
print(vectorizer.get_feature_names())
# ['and', 'document', 'first', 'is', 'one', 'second', 'the', 'third', 'this']
print(X.toarray())
# [[0 1 1 1 0 0 1 0 1]
# [0 2 0 1 0 1 1 0 1]
# [1 0 0 1 1 0 1 1 1]
# [0 1 1 1 0 0 1 0 1]]
文件连结:https://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.CountVectorizer.html
关于python - python中CountVectorier稀疏矩阵中的列名称,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57860515/