spaCyを使用してドキュメントを解析し、最後のspaCyドキュメントにフィルタリングされたトークンが含まれないようにトークンフィルタを適用したいとします。私はフィルタリングされたトークンのシーケンスを取ることができることを知っていますが、私は実際のDoc
構造を持つことに興味を持っています。spaCyドキュメントからトークンをフィルタリングする方法
text = u"This document is only an example. " \
"I would like to create a custom pipeline that will remove specific tokesn from the final document."
doc = nlp(text)
def keep_token(tok):
# This is only an example rule
return tok.pos_ not not in {'PUNCT', 'NUM', 'SYM'}
final_tokens = list(filter(keep_token, doc))
# How to get a spacy.Doc from final_tokens?
私はトークンのリストから新しいスペイシーDoc
を再構築しようとしたが、APIはそれを行う方法は明らかではありません。
私は2番目の解決策を認識しており、現時点では回避策を基本的に回避しています。しかし、それには2つの問題があります:1.あなたが正確に指し示すようにPoSタグが変わる可能性があります。2.文書を再解析してパフォーマンスを低下させる必要があります。 –
文書を入手した後、文書で何をしたいのか説明できますか?なぜトークンを削除したいのですか? – polm23