我正在尝试使用scikit-learn进行一些文本分析。但是,当我尝试调用CountVectorizer时,会引发错误。示例代码和引发的错误如下所示:
>>> from sklearn.feature_extraction.text import CountVectorizer
>>> corpus = [ 'This is the first document.', 'This is the second second document.', 'And the third one.', 'Is this the first document?', ]
>>> vectorizer = CountVectorizer(min_df=1)
>>> X = vectorizer.fit_transform(corpus)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.6/site-packages/sklearn/feature_extraction/text.py", line 789, in fit_transform
vocabulary, X = self._count_vocab(raw_documents, self.fixed_vocabulary)
File "/Library/Python/2.6/site-packages/sklearn/feature_extraction/text.py", line 716, in _count_vocab
vocabulary = defaultdict(None)
TypeError: first argument must be callable
这是我安装中的错误还是其他问题?其他示例工作正常。
总结一下评论中的讨论:这是 Python 2.6.1 中的一个错误,已在最新版本的 Python 2.6 中得到修复(以及后来的 2.7+、3.2+...)。