8

Rに(繁体字)漢字を含むUTF-8エンコードされた.csvファイルを開こうとしました。何らかの理由で、Rは情報を漢字として表示することも、Unicode文字として表示することもあります。

例えば:

data <-read.csv("mydata.csv", encoding="UTF-8")

data

ユニコード文字を生成しますが、次のようになります。

data <-read.csv("mydata.csv", encoding="UTF-8")

data[,1]

実際には漢字が表示されます。

マトリックスに変換すると漢字も表示されますが、データを確認しようとすると(コマンドView(data)またはfix(data))、再びユニコードになります。

Macを使っている人(私はPC、Windows 7を使っています)にアドバイスを求めましたが、中には漢字を使っている人もいれば、持っていない人もいます。代わりに、元のデータをテーブルとして保存し、この方法でRに読み込んでみました。同じ結果です。RStudio、Revolution R、およびRGuiでスクリプトを実行してみました。ロケールを調整しようとしましたが(中国語など)、Rで変更できなかったか、Unicode文字ではなくぎこちない結果になりました。

私の現在のロケールは次のとおりです。

"LC_COLLATE = French_Switzerland.1252; LC_CTYPE = French_Switzerland.1252; LC_MONETARY = French_Switzerland.1252; LC_NUMERIC = C; LC_TIME = French_Switzerland.1252"

Rに一貫して漢字を表示させるための助けをいただければ幸いです...

4

2 に答える 2

3

バグではなく、を構築する際の基礎となる型システム変換(character型と型)の誤解です。factordata.frame

あなたは最初にdata <-read.csv("mydata.csv", encoding="UTF-8", stringsAsFactors=FALSE)あなたの漢字をそのcharacterタイプにすることから始めることができます、そしてそれでそれらを印刷することによってあなたはあなたが期待しているものを見るはずです。

@nograpes:同様にx=c('中華民族');x; y <- data.frame(x, stringsAsFactors=FALSE)、すべてが大丈夫なはずです。

于 2012-10-24T19:25:15.523 に答える
2

私の場合、utf-8エンコーディングは私のrでは機能しません。しかし、Gb*エンコーディングは機能します。utf8はubuntuで動作します。まず、OSのデフォルトのエンコーディングを理解する必要があります。そして、そのままエンコードします。Excelは、utf8として保存すると主張していても、utf8として正しくエンコードできません。

(1)「OpenSheet」ソフトウェアをダウンロードします。

(2)正しく開きます。プレビューウィンドウに漢字が表示されるまで、エンコード方法をスクロールできます。

(3)utf-8として保存します(utf-8が必要な場合)。( UTF -8はすべての問題を解決するわけではありません。まず、システムのデフォルトのエンコーディングを知っておく必要があります)

于 2016-07-26T23:51:00.583 に答える