2017-03-04 11 views
0

私が勉強したいテキストがあるとしましょう。文章と段落の数は、そのままで保存することが重要です(点が文の終わりをトリガーし、改行が新しい段落の開始点になります)。のは、私が最初に私のテキストをトークン化する必要があるとしましょう:あなたが見たよう改行と段落構造を維持しながらトークン化

>>> from nltk import word_tokenize as tokenize 
>>> tokenize('How\'s life? Aren\'t you feeling good\n bro?') 
['How', "'s", 'life', '?', 'Are', "n't", 'you', 'feeling', 'good', 'bro', '?'] 

、出力は言葉を越えた情報を無視リストです。

>>> s = ['How', "'s", 'life', '?', 'Are', "n't", 'you', 'feeling', 'good', 'bro', '?'] 
>>> " ".join(s) 
"How 's life ? Are n't you feeling good bro ?" 

ただし、段落構造が既に失われているため、十分ではありません。 NLTKのトークナイザを使ってこれを行う簡単な方法はありますか?私はむしろ最初の解決策として別の図書館に頼っていません。

答えて

0

トークナイザを変更します。 nltkにはいくつかの異なるものが含まれています。改行の重要性を保持したい場合は、行指向のトークナイザの1つを試してみるか、改行で文字列を分割して一度に1つずつ入力することを検討してください。これにより、改行を何らかの形でデータに戻すことができます。 (たとえば、各改行でトークン化された出力のlen()を追跡するだけです)

関連する問題