如何在R中更改语言设置


109

我的错误消息以法语显示。如何更改系统语言设置,以使错误消息以英文显示?

Answers:


114

您可以使用Sys.setenv()功能进行设置。我的R会话默认为英语,因此我将其设置为法语,然后再次返回:

> Sys.setenv(LANG = "fr")
> 2 + x
Erreur : objet 'x' introuvable
> Sys.setenv(LANG = "en")
> 2 + x
Error: object 'x' not found

缩写列表可在此处找到。

Sys.getenv() 为您提供所有已设置的环境变量的列表。


17
这会临时更改Lang(在R会话期间)。要一次全部更改它,您需要将环境变量添加到系统中,然后重新启动RStudio,以使此生效。
agstudy 2012年

此解决方案效果很好,但是当我重新打开R时,它返回到我的语言环境(意大利语)。
SabDeM 2015年

1
@SabDeM-是的,的确如此。听取注agstudy以上,并设置环境变量:stat.ethz.ch/R-manual/R-devel/library/base/html/EnvVar.html
大通

30

对于Windows RStudio,我已按照Windows R常见问题解答中的说明成功更改了语言。,尤其是我写道:

language = EN

在文件里面 Rconsole(在我的安装中是C:\Program Files\R\R-2.15.2\etc\Rconsole);这也适用于命令Rscript

例如,您可以在Rconsole命令提示符下使用以下两个命令找到文件:

cd \

dir Rconsole /s

第一个将根目录作为当前目录,第二个目录查找Rconsole文件。

在以下屏幕截图中,您具有 Rconsole文件在文件夹中C:\Program Files\R\R-3.4.1\etc

您可能有多个位置,在这种情况下,您可以编辑所有Rconsole文件。

在此处输入图片说明

之后,您可以Rconsole使用自己喜欢的编辑器打开文件并查找该行language =,然后追加EN在该行的末尾。

在以下屏幕截图中,有趣的行是数字70,您必须EN在其末尾附加。 在此处输入图片说明


对我不起作用。更改文件并将语言设置为EN不会对错误消息的语言产生影响。我可以看到这样做是合乎逻辑的,但是我假设与此同时Windows还有其他几种语言配置指令(可能是系统的语言,系统的键盘布局)以复杂且不透明的方式进行交互。
range

@ 0range你尝试cd \ ,并dir Rconsole /s以外观为多个文件?
亚历山德罗·贾科普森

21

对于Mac用户,我在R for Mac常见问题解答中找到了它。

如果您使用非标准设置(例如,与格式使用不同的语言),则可以通过设置`force.LANG'默认设置来覆盖自动检测,例如

 defaults write org.R-project.R force.LANG en_US.UTF-8 

在终端中运行时,无论系统设置如何,它将强制执行美国英语设置。如果您不知道终端是什么,则可以使用以下R命令:

 system("defaults write org.R-project.R force.LANG en_US.UTF-8") 

但不要忘记退出R,然后再次启动R.app。请注意,您必须始终使用`.UTF-8'版本的语言环境,否则R.app将无法正常工作。

这帮助我将控制台语言从中文更改为英语。


确认今天可用于macOS High Sierra 10.13.4和R3.2.3
R Yoda

17

这可以从命令行进行:

$ export LANG=en_US.UTF-8

上面的其他答案对我都不起作用


如果直接从命令行运行R,则以上答案可以写在.bash_profile文件中(在Mac OS中)。然后,只需键入source .bash_profile以使更改在窗口中生效。obs:假设pwd~,即主目录。
Mattia Paterna

13

如果您使用Ubuntu,则将进行设置

LANGUAGE=en 

在/etc/R/Renviron.site中。


这是事实,但不是很有帮助,因为您必须从终端上编辑该文件。对于像我这样的菜鸟来说,这是怎么做的:请sudo nano /etc/R/Renviron.site在终端中输入内容,然后在终端要求您输入密码时输入密码。然后,您可以直接在终端中编辑该文件。添加linellobocki提及的行,然后按ctrl + x退出。然后输入y以确认要保存更改,然后按Enter确认文件的名称和目录。
彼得·潘

我如何在anaconda环境中做到这一点?您必须知道,在使用超级计算机时,通常会在本地安装R和依赖项,而anaconda则很好,但是现在我需要将LANGUAGE设置为“ en”,并将IDK设置为该Renviron.site文件
Sergio

它对我有效(终端),但文件为〜/ .Renviron.site。
史瑞克谭

6

您可能还需要知道的区别,例如,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"

如果您有兴趣更改引用这些元素之一的功能的行为(例如strptime,提取日期),则应使用Sys.setlocale()。请参阅?Sys.setlocale以获取更多详细信息。为了查看linux系统上的所有可用语言,可以运行

system("locale -a", intern = TRUE)

5

对我来说工作:

Sys.setlocale("LC_MESSAGES", "en_US.utf8")

测试:

> Sys.setlocale("LC_MESSAGES", "en_US.utf8")
[1] "en_US.utf8"
> x[3]
Error: object 'x' not found

还在努力获取英文消息:

Sys.setlocale("LC_MESSAGES", "C")

重置为我使用的德语信息

Sys.setlocale("LC_MESSAGES", "de_DE.utf8")

这是我的开始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

4

首先输入以下内容: system(“默认值写入org.R-project.R force.LANG en_US.UTF-8”) 那么您将获得一个索引号(在我的情况下是127)

然后键入: Sys.setenv(LANG =“ en”) 然后键入数字并按ENTER 127


4

一个简单的解决方案是在bash脚本中设置export Lang = C。我有一个类似的问题,默认语言是德语,因此它又恢复为英语。


从R可以执行system("export Lang=C")
jogo

这是一个很好的解决方案。我正在使用anaconda运行R,您的解决方案为我工作。
塞尔吉奥

3

如果您想将终端机中R的语言永久更改为英语,则在macOS中对我来说效果很好:

打开terminal.app,然后说:

touch .bash_profile

然后说:

open -a TextEdit.app .bash_profile

这两个命令将帮助您在TextEdit中打开“ .bash_profile”文件。

将此添加到“ .bash_profile”文件中:

export LANG=en_US.UTF-8

然后保存文件,重新打开终端并输入R,您会发现它的语言已更改为英语。

如果您想让语言回到原始语言,只需添加一个#before即可export LANG=en_US.UTF-8


1

对我唯一有效的方法是完全卸载R(确保也将其从Programs文件中删除)并安装它,但是在安装过程中取消选择 Message Translations。当我安装R并随后安装RCmdr时,它最终以英语出现。


0

在Ubuntu 14.04 LTS中,我必须#从注释中删除#LANGUAGE=EN
所有其他选项din不适用于我。


0

您只需要在计算机上更改Microsoft的基本语言即可!

同时按Windows按钮和r,然后将以下代码提示到打开的窗口中

control.exe /名称Microsoft.Language

加载要使用的语言包并更改选项。但请注意,这也会改变您的键盘布局!


0

在Windows上,当您没有管理员权限时,只需为Rgui.exe创建一个新的程序快捷方式。然后在该快捷方式的属性中,转到“快捷方式”选项卡并修改目标以包括您选择的系统语言,例如"C:\Program Files\R\R-3.5.3\bin\x64\Rgui.exe" LANGUAGE=en


-1

我在Mac上使用R Studio,但找不到Rconsole文件。因此,我采取了更为残酷的方式,只是从R应用程序中删除了不需要的语言文件。您只需要转到应用程序文件夹中的Rapp,右键单击,显示包内容,然后显示/ contents / Resources /。有语言文件,例如English.lproj或我删除的de.lproj。重新启动R后,错误消息将以英语显示。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.