私は200以上の文書を持つ大きな文書コーパスを持っています。このような大きなコーパスから期待できるとおり、一部の単語のスペルが間違っていたり、さまざまな形式で使用されたりしています。私は小文字に変換する、句読点を削除する、単語をステミングするなどの標準のテキスト処理を行っています。私はスペルを修正するためにいくつかの言葉を置き換え、分析に移る前にそれらを標準化しようとしています。私は以下のような同じ構文を使用して100個以上の置換を行いました。置換のほとんどは期待通りに動作しています。しかし、一部(約5%)は働いていません。R tm gsubを使用してコーパスの単語を置換する
docs <- tm_map(docs, content_transformer(gsub), pattern = "medecin|medicil|medicin|medicinee", replacement = "medicine")
docs <- tm_map(docs, content_transformer(gsub), pattern = "eephant|eleph|elephabnt|elleph|elephanyt|elephantant|elephantant", replacement = "elephant")
docs <- tm_map(docs, content_transformer(gsub), pattern = "firehood|firewod|firewoo|firewoodloc|firewoog|firewoodd|firewoodd", replacement = "firewood")
私はいくつかの置換が作業しているにもかかわらず、一部ではないという意味では限られた効果により、たとえば以下の置換は、限られた効果を持っているようです。たとえば、「elephantant」「medicinee」「firewoodd」と置き換えようとしても、DTM(文書用語行列)を作成するときにはまだ存在します。
なぜこの混合効果が起こっているのかわかりません。
また、次の行は、収集のいくつかの組み合わせでコーパス内のすべての単語を置き換えている:固定気づく、参考まで
docs <- tm_map(docs, content_transformer(gsub), pattern = "colect|colleci|collectin|collectiong|collectng|colllect|", replacement = "collect")
私は1つだけの単語を置き換えたときに、私は(構文を使用しています= TRUE):
docs <- tm_map(docs, content_transformer(gsub), pattern = "charcola", replacement = "charcoal", fixed=TRUE)
単一置換および失敗しているものである:
docs <- tm_map(docs, content_transformer(gsub), pattern = "dogmonkeycat", replacement = "dog monkey cat", fixed=TRUE)
ありがとうございました。それは動作します。なぜ単一の置換が失敗したのか? – DotPi
私は置換の順序が間違っていると疑うことができます。以前に起こった別の置換があり、 'dogmonkeycat'に置き換えられるテキストに' dogmonkeycat'が残っていません。 –