/ / Rstudio-r、encoding、rstudioでの特殊文字の使用

Rstudio-r、encoding、rstudioでの特殊文字の使用

私はRstudioのいくつかの特殊文字で作業しています。それらを平文で覆います。

print("Safarzyńska2013")
[1] "Safarzynska2013"

x <- "Māori"
x
[1] "Maori"

元の文字を正確に読み取る方法はありますか? 以下の情報が役に立つかもしれません: Rstudioのデフォルトのエンコーディングはutf-8です

sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

loaded via a namespace (and not attached):
[1] tools_3.1.1

回答:

回答№1は1

排他的なRStudioの問題ではありません。

タイピング print("Safarzyńska2013") RGuiのコンソールでも、それらを平文に変換します。 RGuiのutf-8でエンコードされたスクリプトからこのコードを実行すると、 [1] "Safarzy?ska2013".

このような特別な文字をコンソールに入力するのは良い考えだとは思っていません。 x <- "SomeString"; Encoding(x) 返品 "unknown" これはおそらく問題です:Rはコンソール上でどのエンコーディングを使用しているのか分からず、元のエンコーディングを得る機会がない可能性があります。

私は "Safarzyńska2013nMāorin"をutf-8でエンコードされたテキストファイルに入れました。次に、次のように動作します。

tbl <- read.table("c:/test1.txt", encoding = "utf-8", stringsAsFactors = FALSE)
tbl[1,1]
tbl[2,1]
Encoding(tbl[1,1])  # returns "utf-8"

本当にコンソールを使いたいのであれば、おそらく特別な文字をマスクする必要があります。に ?Encoding 特別な文字を含む単語を作成する次の例があります。

x <- "faxE7ile"
Encoding(x)

実際に私はあなたの特別な文字のためにこれらのコードを取得する方法を瞬時に知りませんし、 ?Encoding また、ヒントはありません...