2017-06-06 41 views
-1

我是nltk的新手,發現很難處理nltk樹。給定Penn樹庫中的nltk解析樹,我希望能夠從下往上遞歸計算每個節點的跨度。葉子節點的跨度爲1,非終端節點的跨度爲其子節點的跨度。有人可以告訴我如何做到這一點?找到NLTK樹中每個節點的跨度

謝謝。

+0

當你顯示你自己的一些努力,即共享代碼,你更有可能得到答案。 – MERose

回答

0

如果tnltk.Tree中的任何樹或子樹,其葉數由len(t.leaves())給出。

>>> t = Tree.fromstring('(S (NP (D the) (N dog)) (VP (V chased) (NP (D the) (N cat))))') 
>>> t[1,1] 
Tree('NP', [Tree('D', ['the']), Tree('N', ['cat'])]) 
>>> len(t[1,1].leaves()) 
2