如何更改R中的语言设置
我的错误信息以法语显示。 如何更改我的系统语言设置,使错误信息以英文显示?
您可以使用Sys.setenv()
函数进行设置。 我的R会话默认为英语,所以我将它设置为法语,然后再回来:
> Sys.setenv(LANG = "fr") > 2 + x Erreur : objet 'x' introuvable > Sys.setenv(LANG = "en") > 2 + x Error: object 'x' not found
缩略语列表可以在这里find。
Sys.getenv()
给你一个所有设置的环境variables的列表。
在RStudio for Windows的情况下,我成功地按照R for Windows FAQ中的说明更改语言,特别是我写道:
language = EN
在文件Rconsole
里面(在我的安装中是C:\Program Files\R\R-2.15.2\etc\Rconsole
); 这也适用于命令Rscript
。
对于mac用户,我发现这在R for Mac常见问题
如果使用非标准设置(例如与格式不同的语言),则可以覆盖通过设置“force.LANG”默认设置执行的自动检测,例如
defaults write org.R-project.R force.LANG en_US.UTF-8
当在terminal中运行时,无论系统设置如何,都将执行US-english设置。 如果你不知道什么terminal,你可以使用这个R命令:
system("defaults write org.R-project.R force.LANG en_US.UTF-8")
但是不要忘记退出R,然后再次启动R.app。 请注意,您必须始终使用`.UTF-8'版本的语言环境,否则R.app将无法正常工作。
这帮助我将控制台语言从中文更改为英文。
如果你使用Ubuntu,你会设置
LANGUAGE=en
在/etc/R/Renviron.site。
这从命令行工作:
$ export LANG=en_US.UTF-8
上面的其他答案都没有为我工作
你也可能想知道Sys.setenv(LANG = "ru")
和Sys.setlocale(locale = "ru_RU.utf8")
。
> Sys.setlocale(locale = "ru_RU.utf8") [1] "LC_CTYPE=ru_RU.utf8;LC_NUMERIC=C;LC_TIME=ru_RU.utf8;LC_COLLATE=ru_RU.utf8;LC_MONETARY=ru_RU.utf8;LC_MESSAGES=en_IE.utf8;LC_PAPER=en_IE.utf8;LC_NAME=en_IE.utf8;LC_ADDRESS=en_IE.utf8;LC_TELEPHONE=en_IE.utf8;LC_MEASUREMENT=en_IE.utf8;LC_IDENTIFICATION=en_IE.utf8"
如果您有兴趣改变引用这些元素之一的函数的行为(例如提取date的strptime
),您应该使用Sys.setlocale()
。 有关更多详细信息,请参阅?Sys.setlocale
。 为了在linux系统上看到所有可用的语言,你可以运行
system("locale -a", intern = TRUE)
键入这个第一: 系统(“默认写入org.R-project.R force.LANG en_US.UTF-8”),那么你将得到一个索引号(在我的情况是127)
然后键入: Sys.setenv(LANG =“en”),然后input数字并按ENTER键127
一个简单的解决scheme是在你的bash脚本中设置export lang = C。 我有一个类似的问题,默认语言是德语,所以它恢复为英语。
你只需要改变你的计算机上的微软的基本语言!
按下窗口button与r,并提示下面的代码到打开的窗口
control.exe /名称Microsoft.Language
加载您想要使用的语言包并更改选项。 但保重,这将改变你的键盘布局!
我在Mac上使用R Studio,我无法findRconsole文件。 所以我采取了更加残忍的方式,从R应用程序中删除了不需要的语言文件。 你只需要在应用程序文件夹中find你的Rapp,点击右键,显示包内容然后/ contents / Resources /。 有语言文件,如英语.lproj或在我的情况下de.lproj我删除。 重新启动R后,错误信息以英文显示..也许这是有帮助的!
在Ubuntu 14.04 LTS中,我必须从注释#LANGUAGE=EN
删除#
。
所有其他选项不适合我。
对我而言:
Sys.setlocale("LC_MESSAGES", "en_US.utf8")
testing:
> Sys.setlocale("LC_MESSAGES", "en_US.utf8") [1] "en_US.utf8" > x[3] Error: object 'x' not found
这是我的sessionInfo
的开始:
> sessionInfo() R version 3.4.1 (2017-06-30) Platform: x86_64-pc-linux-gnu (64-bit) Running under: Ubuntu 16.04.2 LTS
如果你想在terminal上把R的语言永久地改成英文,这对macOS来说工作的很好:
打开terminal.app,并说:
touch .bash_profile
然后说:
open -a TextEdit.app .bash_profile
这两个命令将帮助您在TextEdit中打开“.bash_profile”文件。
将此添加到“.bash_profile”文件中:
export LANG=en_US.UTF-8
然后保存文件,重新打开terminal并键入R
,你会发现它的语言已经改为英文。
如果你想让语言回到原来的状态,只需在export LANG=en_US.UTF-8
之前添加一个#
即可。