Я пытаюсь токенизировать свои данные, но я очень много борюсь. Обратите внимание, что я новичок в НЛП.
Вот как выглядят мои данные (называемые спамом):
Out[8]:
text
0 Free entry in 2 a wkly comp to win FA Cup fina...
1 FreeMsg Hey there darling it's been 3 week's n...
2 WINNER!! As a valued network customer you have...
3 Had your mobile 11 months or more? U R entitle...
4 SIX chances to win CASH! From 100 to 20,000 po...
И это то, что я пробовал до сих пор.
def tokenize(text):
tokens = [token for token in simple_preprocess(text)
if token not in STOPWORDS]
return [token for token in tokens
if token not in custom_stopwords]
tokenize(spam)
Когда я запускаю это, я получаю следующую ошибку:
TypeError: декодирование в str: нужен объект, похожий на байты, найден DataFrame
Итак, я попытался расшифровать его так:
open(spam).read().decode('utf-8')
Но это также приводит к ошибке:
TypeError: ожидаемый объект str, bytes или os.PathLike, а не DataFrame
Итак, глядя на ошибки, я вижу, что проблема в том, что спам - это фрейм данных, но я не знаю, что с этим делать.
Я также пытался использовать функцию the nltk.tokenize()
, но это дало мне еще одну ошибку
TypeError: объект 'module' не вызывается