0

首先我必须承认我是 Python 或 R 的新手。

在这里,我试图创建一个包含二元/二元列表及其 POS 标签(NN、VB 等)的文件。这用于轻松识别有意义的二元组及其 POS 标签组合。

例如:二元组 - 'Gross' 'Profit' 具有 JJ 和 NN 的 POS 标签组合。但是二元组 - 'quarter' 'of' 具有 NN 和 IN 的 POS 标签组合。有了这个,我可以找到有意义的 POS 组合。它可能不准确。那也行。只是想研究它。

如需参考,请查看本页中的“2-gram 结果”部分。我的要求是这样的。但它是在 R 中完成的。所以它对我没有用。

正如我在 Python 中遇到的那样,POS 标记和二元组的创建可以使用 NLTK 或 TextBlob 包来完成。但是我找不到为 Python 中生成的二元词分配 POS 标签的逻辑。请参阅下面的代码和相关输出。

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))

任何帮助深表感谢。提前致谢。

4

0 回答 0