是否有一种廉价且简单的方法可以阻止sklearn的CountVectorizer
仅通过stop_words
参数停止unigrams,并使其停止双字母组合?我的意思在以下片段中说明:
from sklearn.feature_extraction.text import CountVectorizer
texts = ['hello this is text number one yes yes',
'hello this is text number two stackflow']
stop_words = {'hello this'}
model = CountVectorizer(analyzer='word',
ngram_range=(1,2),
max_features=3,
stop_words=stop_words)
doc_vectors = model.fit_transform(texts).toarray()
print(doc_vectors)
print(model.get_feature_names())
所以这段代码的作用是输出如下:
>>> [[1 1 1]
>>> [1 1 1]]
>>> ['hello', 'hello this', 'is']
正如你所看到的那样,我想要把二重奏'你好'这个'计算出来(它用来阻止词语)。我已经看过一些他们使用管道或自定义分析器的帖子,我浏览了文档,但是不是更容易解决这个问题吗?
谢谢!