Python 获取错误“;空洞的词汇;文件中可能只包含“停止”字;关于CountVectorizer()的实现

Python 获取错误“;空洞的词汇;文件中可能只包含“停止”字;关于CountVectorizer()的实现,python,pandas,scikit-learn,one-hot-encoding,countvectorizer,Python,Pandas,Scikit Learn,One Hot Encoding,Countvectorizer,我正在尝试使用CountVectorizer()对分类变量执行一次热编码。除了一个名为“训练中心”的栏目外,我能够在所有栏目中实现这一点。此列包含三个唯一值“A”、“B”、“C”。当我在此列上实现CountVectorizer时,它会给我一个空词汇表的错误;可能文档只包含停止词 vec=CountVectorizer() train_drill=vec.fit_transform(X_train['Drill Centre']).toarray() test_drill=vec.transfor

我正在尝试使用CountVectorizer()对分类变量执行一次热编码。除了一个名为“训练中心”的栏目外,我能够在所有栏目中实现这一点。此列包含三个唯一值“A”、“B”、“C”。当我在此列上实现CountVectorizer时,它会给我一个空词汇表的错误;可能文档只包含停止词

vec=CountVectorizer()
train_drill=vec.fit_transform(X_train['Drill Centre']).toarray()
test_drill=vec.transform(X_test['Drill Centre']).toarray()

计数矢量器不生成一个热编码。它生成ngrams。为什么不直接使用一个热编码器:CountVectorizer中有一个标记器模式(参数),它不会将单个字母识别为单词。这就是为什么带有分类数据的空vocab.Count矢量器会创建稀疏表示,而不是一个热表示。如果你想要一个hot,就按照@Metropolis的建议使用一个hot;CountVectorizer用来处理自然语言数据:单词和句子。