我正在尝试运行下面这样的代码:
from sklearn.feature_extraction.text import TfidfVectorizer
test_text = ["q", "r"]
vect = TfidfVectorizer(min_df=1,
stop_words=None,
lowercase=False)
tfidf = vect.fit_transform(test_text)
print vect.get_feature_names()
但是得到一个ValueError:
ValueError: empty vocabulary; perhaps the documents only contain stop words
是否存在关于输入的限制或约束的指导?我在TfidfVectorizer doc page上找不到任何东西。我试图跟踪它,并找到了_count_vocab
函数,但我在读取它时遇到了问题。此外,当我将字符串的长度更改为2或更大时,代码运行正常。
发布于 2016-09-14 04:57:55
该错误是由于min_df参数引起的。当您设置min_df =0的值时,它将工作得很好,因为它不会受到当前设置为1的“最小阈值”的限制,并且您的每个单词也只出现一次。
https://stackoverflow.com/questions/39478120
复制相似问题