python - 如何在nltk python中通过标签获取树中的节点?

标签 python nlp nltk nltk-trainer

我有一棵树:

(S  
    (WH-QUERY Which)  
    (FLIGHT-NP   
        (FLIGHT-CNP  
            (FLIGHT-CNP (FLIGHT-N flight))  
            (FLIGHT-DEST to (CITY-NP (CITY-NAME Hue) (CITY-N city)))))  
    (FLIGHT-VP  
        (FLIGHT-V arrives)  
        (FLIGHT-TIME (P-TIME at) (TIME-MOD 20:00HR))))  

我想通过 nltk 中的标签获取特定节点。例如,我有标签“CITY-NAME”,我想获取节点(CITY-NAM Hue)。我怎样才能实现这个目标?

最佳答案

一种方法是遍历树搜索匹配的节点:

for subtree in tree.subtrees():
     if subtree.label() == 'CITY-NAME':
          print subtree.leaves()

关于python - 如何在nltk python中通过标签获取树中的节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37521009/

相关文章:

python - 使用 Python 进行拼写纠正 (pyspellchecker)

machine-learning - 预测文档的分数?

python - nltk 中的退避标记器

python - 文件存在时,os.rename 不会引发 FileExistsError

python - 在 Windows 上通过 Python 脚本运行 Spice 模拟

python - 在python环境下,如何导入特定版本的包?

python - NLTK Sentence Tokenizer,自定义句子启动器

python - 计算python中的逐行时间差

c - 从电子邮件地址中检索字符串

python - NLTK 的所有可能的 pos 标签是什么?