我试图在标签数据上实现CountVectorizer,但是每次它抛出属性错误时,都尝试了一切,但仍然无法理解为什么会出现此错误。这是我的代码,
vectorizer = CountVectorizer(tokenizer = lambda x: x.split(" "))
tag_dtm = vectorizer.fit_transform(tag_data['Tags'])
这是我得到的错误:
`AttributeError
Traceback (most recent call last)
<ipython-input-53-7a05ab3b6655> in <module>()
7 # and learns the vocabulary; second, it transforms our training data
8 # into feature vectors. The input to fit_transform should be a list of strings.
----> 9 tag_dtm = vectorizer.fit_transform(tag_data['Tags'])
3 frames
/usr/local/lib/python3.6/dist-packages/sklearn/feature_extraction/text.py in _preprocess(doc, accent_function, lower)
66 """
67 if lower:
---> 68 doc = doc.lower()
69 if accent_function is not None:
70 doc = accent_function(doc)
AttributeError: 'NoneType' object has no attribute 'lower'`
答案 0 :(得分:0)
'doc'中不包含任何数据/字符串,它是None类型。 None不是none或blank的含义,它是一种类型。 并使用“如果doc为None:”的条件进行检查。
答案 1 :(得分:0)
尝试将其转换为字符串,因为较低的是字符串函数,并且由于传递到CountVectorizer的数据之一是NoneType,因此实际上就钩在那里了