繁体   English   中英

在Rstudio中使用特殊字符

[英]Using special characters in 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

这不是RStudio独有的问题。

print("Safarzyńska2013")的控制台上键入print("Safarzyńska2013")也会将其转换为普通字母。 从RGui中的UTF-8编码脚本运行此代码将返回[1] "Safarzy?ska2013"

我认为在控制台上键入此类特殊字符不是一个好主意。 x <- "SomeString"; Encoding(x) x <- "SomeString"; Encoding(x)返回"unknown" ,这可能是问题所在:R不知道您在控制台上使用哪种编码,并且可能没有机会获得原始编码。

我将“Safarzyńska2013\\nMāori\\ n”放在以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 <- "fa\xE7ile"
Encoding(x)

实际上,我目前不知道如何获取这些特殊字符的代码,并且?Encoding也没有提示...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM