Маркировка POS в Dataframe pandas-Textblog

Я пытаюсь выполнить пометку POS для моего текста, который присутствует в кадре данных. Я пытался использовать TextBlob, но не получил желаемого результата. Мой желаемый результат: «должен быть создан новый столбец со всеми тегами». Например: «Мне нравится stackoverflow», и мой новый столбец POS_tagged должен иметь [('I', 'PRP'), ('like', 'VBP'), ('stackoverflow', 'JJ')]

Я пытался использовать Textblob, но он работает для одного предложения. Это не работает для серий предложений.

def postag(sentence1):
blob=TextBlob(sentence1)
return blob.tags

aspect_new["POS"]=aspect_new['tweets'].apply(postag)

Я получаю ошибку ниже

TypeError: The `text` argument passed to `__init__(text)` must be a string, not <class 'float'>

Не могли бы вы помочь мне добиться того же в textblob?


person python_interest    schedule 28.03.2018    source источник


Ответы (1)


Проблема может быть решена с помощью следующих

from nltk import word_tokenize, pos_tag, pos_tag_sents
tweet=aspect_new['tweets'].tolist()
tw=[]
for i in tweet:
   tw.append(str(i))

tagged_texts = pos_tag_sents(map(word_tokenize, tw))
aspect_new["POS tags"]=tagged_texts
person Srihari Mohan    schedule 28.03.2018