

統計用フリーソフト Rについての質問です。  
初心者なのでもしかしたらすごく簡単なところでつまづいているかもしれません。

現在、UTF-8で保存された日本語テキスト文をRMeCabで解析しようとしているのですが、文字化

けしてしまいます。RMeCabFreq()関数を使おうとしています。  
そこでネットでいろいろと探してみたのですがこれといった解決法が見つかりませんでした。解決法をご教授お願いいたします。

試してみたこと  
Sys.setlocale()関数で"UTF-8"にロケールを変更しようとする  
結果：ロケールを "UTF-8" に設定せよとの OS のレポート要求は受け入れられません

options(encoding="UTF-8")  
色々と不具合？が起き出す→できればこのoptions()でエンコードを指定した場合はどのような効果があるのかを教えていただきたいです。


CC BY-SA 3.0
2016-01-23T04:13:12.280
21212
2016-11-07T12:22:06.840
14109
question
r
RMeCabでUTF-8で書かれたファイルを扱う方法


文面から推測するに、WindowsでMeCab、R、RMeCabを使っているのですね。  
いずれもデフォルトではShift-JISを想定しているはずです。  
なので、対象とするファイルそのものをShift-JISに変換してから使うのが、もっとも手っ取り早い方法です。

なにかの事情でファイルの文字コードを変えられないのであれば、とりあえずUTF-8のまま読み込んで、Rの内部でShift-
JISに変換するなどの方法がありますが、その場合は、また質問してください。


CC BY-SA 3.0
2016-01-23T04:23:41.980
21213
2016-01-23T04:23:41.980
14110
21212
answer


ご回答では、どの段階で文字化けしたのか分かりませんが、少なくともUTF-8として正常に保存されているのであれば TeraPad
あたりで開いて文字コードを変えて保存しなおすがいいのでは？

あるいは

[code]

    x <- readLines("utf-8.txt", encoding = "UTF-8")
    write(x, "shif.txt")
    
[/code]

を実行すれば文字コードを変えたファイルになるはず。

あるいは以下のように iconv を操作途中で使います。

[code]

    library(dplyr)
    library(rvest)
    
    usedCars <- read_html("http://www.goo-net.com/car_review/index.html")
    comments <- html_nodes(usedCars, '.txt_review') %>% html_text()
    comments <- iconv(comments, from = "UTF-8")
    
    x <- tempfile()
    write(x = gsub("[[:space:]]","", comments), file = x)
    
    library(RMeCab)
    frq <- RMeCabFreq(x)
    
    head (frq)
    
    unlink(x)
    
[/code]

最初の方でサイトページから要素を取り出す処理をしてますが、これらに関連する疑問があれば、新たに別スレ立てて質問することをお勧めします。


CC BY-SA 3.0
2016-01-23T06:14:48.817
21216
2016-01-23T12:25:21.700
2016-01-23T12:25:21.700
3068
14111
21212
answer