Подход "мешочек слов" для разделения сообщения на отдельные слова - PullRequest
0 голосов
/ 07 января 2019

Я пытаюсь разбить сообщение на отдельные слова и пытаюсь разбить его на токены.

def split_into_tokens(message):
    message = unicode(message, 'utf8')  # convert bytes into proper unicode
    return TextBlob(message).words

messages.message.head().apply(split_into_tokens)

если show nameError: имя "unicode" не определено

  <ipython-input-16-98e123c365b4> in <module>()
----> 1 messages.title.head().apply(split_into_tokens)

C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\series.py in 
apply(self, func, convert_dtype, args, **kwds)
  3192             else:
  3193                 values = self.astype(object).values
->3194                 mapped = lib.map_infer(values, f, 
convert=convert_dtype)
   3195 
   3196         if len(mapped) and isinstance(mapped[0], Series):

pandas/_libs/src\inference.pyx in pandas._libs.lib.map_infer()

<ipython-input-14-281c1d080655> in split_into_tokens(title)
      1 def split_into_tokens(title):
----> 2 title = unicode(title, utf8)  # convert bytes into proper 
      unicode
      3     return TextBlob(title).words

NameError: name 'unicode' is not defined

в конце он показывает Unicode не определен, я пытаюсь изменить версию Python также остаются той же проблемой. Нужно ли было заменить юникод на str в каталоге плагинов Python?

1 Ответ

0 голосов
/ 07 января 2019

Я предполагаю, что вы находитесь на Python 3, поэтому попробуйте удалить строку message = unicode(message, 'utf8') - ваша переменная message, вероятно, уже является строкой Unicode. Если это не так, то это, вероятно, объект bytes, и в этом случае правильный способ превратить его в строку юникода в python 3 - message.decode('utf8'). См. https://docs.python.org/3/howto/unicode.html, если вы хотите больше информации.

...