私はpythonを使ってテキスト解析タスクを行っています。ここでは、テキスト処理タスクにNLTKを使用しました。私の場合は、あらかじめ定義されたbiwordsのセットがあります。nltkを使って既知のバイワードの文章をどのようにトークン化するのですか?
arr = ['Animo Text Analytics Inc.', 'Amila Iddamalgoda']
また、以下のような文章があります。
sentence = "Amila Iddamalgoda is currently working for Animo Text Analytics Inc. and currently following the Text Mining and Analytics course provided by coursera."
これをNLTKでトークン化しました。
tokenizer = RegexpTokenizer(r'\w+')
tokens = tokenizer.tokenize(sentence)
これは、単一の単語トークン(明らかに)を与えます。しかし、私が必要とするのは、私が持っている定義済みのバイワードのセット(最初に述べたもの)と一致させ、そのバイワードのファラースを単一のトークンとして取ることです。
例:Amila Iddamalgoda、現在、作業し、アニモテキスト解析株式会社、follwoing、... がどのように私はこれを達成することができますか?あなたは今、「正常な」トークン化を行うことができますfor expr in arr:
sentence = re.sub(expr, re.sub(r'\s+', "_", expr), sentence)
#'Amila_Iddamalgoda is currently working ...'
: