NLTKを使用してセンテンスをトークン化しましたが、今はそのセンタンスを文字列に再構築したいと思います。 私はドキュメントを見てきましたが、これを行うには明らかなワットが見えません。これはまったく可能ですか?トークンからのNLTK再構成文
tokens = [token.lower() for token in tokensCorrect]
NLTKを使用してセンテンスをトークン化しましたが、今はそのセンタンスを文字列に再構築したいと思います。 私はドキュメントを見てきましたが、これを行うには明らかなワットが見えません。これはまったく可能ですか?トークンからのNLTK再構成文
tokens = [token.lower() for token in tokensCorrect]
nltkはそのような機能を提供しません。空白はトークン化中に破棄されるので、あなたが始めたものを正確に返す方法はありません。空白には改行と複数の空白が含まれている可能性があり、これらを戻す方法はありません。あなたができることは、普通の文のように見える文字列に文章を結合することです。
>>> print(" ".join(tokens))
'This is a sentence .'
だから、あなたがスペースを持っている必要があり(
と``
などの少数精鋭を除く、ほとんどの句読点の前にスペースを取り除く必要があります:シンプル" ".join(tokens)
前と奇妙に見えるすべての句読点、後にスペースを入れてますの後、が削除されました。アポストロフィー'
は、単語の間に、場合によっては前に、時には後で使用されることがあるため、時には推測になります。 ("Nuthin' doin', y'all!"
)これで幸運です。
私は、文をトークン化した元の文字列を保持し、それらの文字列に戻って戻ってくることをお勧めします。あなたはあなたの文章がどこから来たのかを示していないので、それ以上のことは言いません。