Pandas 数据中没有字的计数向量器

Pandas 数据中没有字的计数向量器,pandas,scikit-learn,Pandas,Scikit Learn,我是一个新的学习和计数矢量器 我正经历着一些奇怪的行为 初始化计数向量器 from sklearn.feature_extraction.text import CountVectorizer count_vect = CountVectorizer() document_mtrx = count_vect.fit_transform(df['description']) count_vect.vocabulary_ count_vect.vocabulary_ Out[28]: {u'view

我是一个新的学习和计数矢量器

我正经历着一些奇怪的行为

初始化计数向量器

from sklearn.feature_extraction.text import CountVectorizer
count_vect = CountVectorizer()
document_mtrx = count_vect.fit_transform(df['description'])
count_vect.vocabulary_
count_vect.vocabulary_
Out[28]:
{u'viewscity': 36216,
 u'sizeexposed': 31584,
 u'rentalcontact': 29104,
 u'villagebldg': 36323,
获取包含单词rentalcontact的行

df[df['description'].str.contains('rentalcontact')]
返回的行数为0。为什么会出现这种情况?

有一个参数
小写
,默认值为
True
——这很可能就是您找不到这些值的原因

所以试试这个:

df[df['description'].str.lower().str.contains('rentalcontact')]
#                        ^^^^^^^
更新:

词汇:听写

术语到特征索引的映射

u'rentalcontact':29104
-表示
'rentalcontact'
在功能列表中有一个索引
29104


例如,
vectorizer.get\u feature\u names()[29104]
应返回
'rentalcontact'

此术语出现的次数为29104。然而,当我运行最后一行代码时,它只返回1个结果。还有什么我遗漏的吗?@aceminer,AFAIK
29104
是排序功能列表中
rentalcontact
的索引。如何检查:
print(vectorizer.get\u feature\u names()[29104])
如何获取术语的频率?@aceminer,
document\u mtrx.sum(0)
-将为您提供所需的结果