首先我必须承认我是 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))
任何帮助深表感谢。提前致谢。