テキスト マイニングに R を使用しており、異なるテキスト列から連結されたデータがあります。「functi oning」のように単語がスペースで区切られている場合があります。そのようなケースをすべて検出し、辞書チェックを行って間のスペースを削除したいと考えています。私は aspell の splitWords 関数を知っています。これとは正反対の関数が必要です。
1 に答える
1
これは私が見つけたいくつかのコードに基づくアプローチですが、他の人が応答するのを助けるために、いくつかの例のテキストと擬似コードさえも提供する必要があります.
最初に、正しい綴りの単語の膨大なセットを持つオブジェクトを作成します。次に、単語のベクトルをそのセットと比較しadist
、引数を単一の違いに設定します。理想的には、削除したい内部スペースです。これですべてが解決するとは思えませんが、役立つかもしれません。
sorted_words <- comments(sort(table(strsplit(tolower(paste(readLines("http://www.norvig.com/big.txt"), collapse = " ")), "[^a-z]+")), decreasing = TRUE))
correct <- function(*your vector*) { c(sorted_words[adist(*your vector*, sorted_words) <= min(adist(word, sorted_words), 2)], word)[1] }
次に、correct
関数を使用します。
于 2015-03-04T13:02:45.693 に答える