iam gettinig AttributeError: у объекта 'list' нет атрибута 'lower' при попытке разделения ("") текстовых данных - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь векторизовать текстовые данные, но получаю следующее ОШИБКА

AttributeError: у объекта 'list' нет атрибута 'lower'

Мой код:

yourResult = [str(sentence).split(' ') for sentence in tag_data["Tags"]]

vectorizer = CountVectorizer()
tag_dtm = vectorizer.fit_transform(yourResult)#tag.apply(lambda x: str(x).split(" ")))

1 Ответ

0 голосов
/ 20 февраля 2019

Поскольку проблема указана, yourResult - это список списков, поскольку split(' ') возвращает список, в то время как это должен быть список строк.CountVectorizer делает разделение для вас, поэтому нет необходимости делать это заранее.Это должно работать просто отлично:

tag_dtm = vectorizer.fit_transform(tag_data["Tags"])

Если вы хотите полностью контролировать работу расщепления внутри CounVectorizer, вы можете предоставить свой собственный токенизатор:

vectorizer = CountVectorizer(tokenizer=lambda s: s.split(' '))
tag_dtm = vectorizer.fit_transform(tag_data["Tags"])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...