-1
私はnltkが新しく、nltkツリーを扱うのが難しいと感じました。 Penn treebankからnltkの解析木が与えられたので、各ノードのスパンを下から上に再帰的に数えたいと思っています。リーフノードのスパンは1です。非終端ノードのスパンは、その子のスパンの合計です。誰かが私にこれを行う方法を教えてもらえますか?NLTKツリー内の各ノードのスパンを見つける
ありがとうございます。
私はnltkが新しく、nltkツリーを扱うのが難しいと感じました。 Penn treebankからnltkの解析木が与えられたので、各ノードのスパンを下から上に再帰的に数えたいと思っています。リーフノードのスパンは1です。非終端ノードのスパンは、その子のスパンの合計です。誰かが私にこれを行う方法を教えてもらえますか?NLTKツリー内の各ノードのスパンを見つける
ありがとうございます。
t
がnltk.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
あなた自身の努力、つまりコードを共有すると、回答が得られやすくなります。 – MERose