Проблема с токенизатором Nltk
from nltk.tokenize import RegexpTokenizer
tokenizer = RegexpTokenizer(r'\w+')
dataset['text'] = dataset['text'].apply(lambda word_list: [tokenizer.tokenize(word) for word in word_list])
dataset['text'].head()
Приведенный выше код показывает ошибку
ожидаемая строка или объект, похожий на байты, получен «список»
1 ответ
Предполагая, что dataset['text'] содержит строки, попробуйте внести это изменение в свой код. Если ваша цель — маркировать каждую отдельную строку в столбце dataset['text'], вам необходимо применить токенизатор к каждой строке, а не к каждому слову в строке.
dataset['text'] = dataset['text'].apply(lambda text: tokenizer.tokenize(text))
dataset['text'].head()
Если dataset['text'] сам по себе представляет собой список списков (где каждый внутренний список содержит слова), то нам нужно использовать другой подход.