Во-первых, я должен признать, что я новичок в Python или R.
Здесь я пытаюсь создать файл со списком биграмм / 2-грамм вместе с их POS-тегами (NN, VB и т. Д.). Это используется для легкой идентификации значимых биграмм и их комбинаций тегов POS.
Например: биграмма «Валовая» «Прибыль» имеет комбинацию тегов POS JJ и NN. Но биграмма - «четверть» «из» имеет комбинацию тегов POS NN и IN. Благодаря этому я могу найти значимые комбинации POS. Это может быть неточно. Это нормально. Просто хочу исследовать с ним.
Для справки см. раздел "Результаты 2-грамм" на этой странице.Мое требование примерно такое. Но это было сделано в R. Так что мне это не пригодилось.
Как я обнаружил в Python, тегирование POS и создание биграмм можно выполнить с помощью пакета NLTK или TextBlob. Но я не могу найти логику для назначения тегов POS для биграмм, сгенерированных в Python. См. ниже код и соответствующие выходные данные.
import nltk
from textblob import TextBlob
from nltk import word_tokenize
from nltk import bigrams
################# Code snippet using TextBlob Package #######################
text1 = """This is an example for using TextBlob Package"""
blobs = TextBlob(text1) ### Converting str to textblob object
blob_tags = blobs.tags ### Assigning POS tags to the word blobs
print(blob_tags)
blob_bigrams = blobs.ngrams(n=2) ### Creating bi-grams from word blobs
print(blob_bigrams)
################# Code snippet using NLTK Package #######################
text2 = """This is an example for using NLTK Package"""
tokens = word_tokenize(text2) ### Converting str object to List object
nltk_tags = nltk.pos_tag(tokens) ### Assigning POS tags to the word tokens
print(nltk_tags)
nltk_bigrams = bigrams(tokens) ### Creating bi-grams from word tokens
print(list(nltk_bigrams))
Любая помощь горячо приветствуется. Заранее спасибо.