web-dev-qa-db-ja.com

スペイシーで文中の単語の位置を取得する

ドキュメントからさまざまな属性を取得するための基本的なスペイシーワークフローは知っていますが、文の一部であるWordの位置(開始/終了)を返す組み込み関数が見つかりません。

これがSpacyで可能かどうか誰かが知っていますか?

13
jack west

これらは、文中のトークンの属性として利用できます。 Doc さんのコメント:

idx int親ドキュメント内のトークンの文字オフセット。

i int親ドキュメント内のトークンのインデックス。

>>> import spacy
>>> nlp = spacy.load('en')
>>> parsed_sentence = nlp(u'This is my sentence')
>>> [(token.text,token.i) for token in parsed_sentence]
[(u'This', 0), (u'is', 1), (u'my', 2), (u'sentence', 3)]
>>> [(token.text,token.idx) for token in parsed_sentence]
[(u'This', 0), (u'is', 5), (u'my', 8), (u'sentence', 11)]
20
DhruvPathak