Python 使用参数stop_words时,scikit learn TFIDFvectorier中出现错误

Python 使用参数stop_words时,scikit learn TFIDFvectorier中出现错误,python,numpy,scikit-learn,Python,Numpy,Scikit Learn,我是新手。我正在尝试进行tfidf矢量化,以适应由英语句子组成的1*M numpy.array,即tot_数据(在下面的代码中)。 这里的“words”是一个numpy.array(1*173),包含停止词列表。 我需要明确定义参数stop_words。 如果我没有显式使用参数stop_words,代码运行正常,但下面的行显示错误 word=numpy.array(['a','about',…])) >>矢量器=TfidfVectorizer(最大df=0.95,停止字=字).fit(tot数据

我是新手。我正在尝试进行tfidf矢量化,以适应由英语句子组成的1*M numpy.array,即tot_数据(在下面的代码中)。 这里的“words”是一个numpy.array(1*173),包含停止词列表。 我需要明确定义参数stop_words。 如果我没有显式使用参数stop_words,代码运行正常,但下面的行显示错误

word=numpy.array(['a','about',…]))

>>矢量器=TfidfVectorizer(最大df=0.95,停止字=字).fit(tot数据)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/local/python2.7/lib/python2.7/site-packages/sklearn/feature_-extraction/text.py”,第1203行,适合
X=super(TfidfVectorizer,self).fit\u转换(原始文档)
文件“/usr/local/python2.7/lib/python2.7/site packages/sklearn/feature\u extraction/text.py”,第780行,在fit\u transform中
词汇表,X=self.\u count\u vocab(原始文档,self.fixed\u词汇表)
文件“/usr/local/python2.7/lib/python2.7/site packages/sklearn/feature\u extraction/text.py”,第710行,在
analyze=self.build\u analyzer()
文件“/usr/local/python2.7/lib/python2.7/site packages/sklearn/feature_extraction/text.py”,第225行,内置分析器
停止单词=self.get\u停止单词()
文件“/usr/local/python2.7/lib/python2.7/site packages/sklearn/feature\u extraction/text.py”,第208行,以get\u stop\u words格式
返回检查停止列表(self.stop\u单词)
文件“/usr/local/python2.7/lib/python2.7/site packages/sklearn/feature\u extraction/text.py”,第85行,在检查停止列表中
如果停止==“英语”:
ValueError:包含多个元素的数组的真值不明确。使用a.any()或a.all()

原因:错误的原因是numpy数组传播到元素:

>>> word == 'english'
array([False, False, False], dtype=bool)
如果
语句无法将结果数组转换为布尔值:

>>> if word == 'english': pass
...
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

原因:错误原因是numpy数组传播到元素:

>>> word == 'english'
array([False, False, False], dtype=bool)
如果
语句无法将结果数组转换为布尔值:

>>> if word == 'english': pass
...
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
@amitbisai不客气!标准免责声明:如果你发现问题有用,请考虑。标准免责声明:如果你发现问题有用的话,考虑一下。