gpt4 book ai didi

python - NLTK 对结果树进行分块和遍历

转载 作者:太空狗 更新时间:2023-10-29 17:31:41 25 4
gpt4 key购买 nike

我正在使用 NLTK RegexpParser 从标记的标记中提取名词组和动词组。

我如何遍历生成的树以仅找到属于 NP 或 V 组的 block ?

from nltk.chunk import RegexpParser

grammar = '''
NP: {<DT>?<JJ>*<NN>*}
V: {<V.*>}'''
chunker = RegexpParser(grammar)
token = [] ## Some tokens from my POS tagger
chunked = chunker.parse(tokens)
print chunked

#How do I walk the tree?
#for chunk in chunked:
# if chunk.??? == 'NP':
# print chunk

(小号 (NP 运营商/NN) 对于/IN 组织-/JJ 和/抄送 细胞培养/JJ 对于/IN (NP the/DT准备/NN) 的/在 (NP 植入物/NNS) 和/抄送 (NP 植入物/NN) (V含/VBG) (NP the/DT carrier/NN) ./.)

最佳答案

这应该有效:

for n in chunked:
if isinstance(n, nltk.tree.Tree):
if n.label() == 'NP':
do_something_with_subtree(n)
else:
do_something_with_leaf(n)

关于python - NLTK 对结果树进行分块和遍历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7619109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com