python - 如何显示每个被向量化的单词的实际数量

标签 python python-3.x vector scikit-learn

我正在阅读一本关于 Scikit-learn 的教程书,其中一个部分包含以下代码块:

from sklearn.feature_extraction.text import CountVectorizer
corpus = ['The dog ate a sandwich, the wizard transfigured a sandwich, and I ate a sandwich']
vectorizer = CountVectorizer(stop_words='english')
print vectorizer.fit_transform(corpus).todense()

当我运行它时,我得到这个:

[[2 1 3 1 1]]

当我应该得到这两个时:

[[2 1 3 1 1]]
{u'sandwich': 2, u'wizard': 4, u'dog': 1, u'transfigured': 3, u'ate': 0}

如何更改代码以获取被向量化的每个单词的实际单词和数量,而不仅仅是向量本身?

最佳答案

模型拟合后,您将访问 .vocabulary_ 属性:

>>> vectorizer.vocabulary_
{'ate': 0, 'dog': 1, 'sandwich': 2, 'transfigured': 3, 'wizard': 4}

关于python - 如何显示每个被向量化的单词的实际数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37706396/

相关文章:

python - 给定点坐标和相机外参/内参,哪个 openCv 函数可用于计算 BEV 透视变换?

python-3.x - 为什么 type(mock.MagicMock()) == mock.MagicMock 返回 False?

python - Kafka-python 如何消费json消息

C++ 基础 vector 指派生 vector

c++ - 在 for range 循环中迭代包含 vector 的取消引用的 unique_ptr

c++ - 如何制作类似类的 "variadic" vector

python - asyncio 在任务中捕获 TimeoutError

python - 将嵌套列表转换为字符串

python - 检测导入模块中的 ImportError

python - “范围”对象不支持项目分配 - 尝试在 python 3.3 中使用旧的 python 代码