如何更改 R 中的语言设置

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

170715 次浏览

您可以使用 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()为您提供了设置的所有环境变量的列表。

在 RStudio for Windows 的例子中,我成功地按照 视窗常见问题解答中的说明改变了语言,特别是我写道:

language = EN

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

例如,您可以使用以下两个命令从命令提示符定位 Rconsole文件:

cd \

dir Rconsole /s

第一个以 root 作为工作目录,第二个查找 Rconsole文件。

在下面的屏幕截图中,Rconsole文件位于文件夹 C:\Program Files\R\R-3.4.1\etc中。

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

enter image description here

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

在下面的截图中,有趣的一行是数字70,你必须在它的末尾追加 ENenter image description here

我在 Mac 上使用 R Studio,我找不到 Rsole 文件。所以我采取了一个更残酷的方式,只是删除了不想要的语言文件从 R 应用程序。 您只需在应用程序文件夹中打开 Rapp,右键单击,然后/content/Resources/显示包内容。有一些语言文件,例如 English.lproj 或者在我的例子中是 de.lproj,我删除了它们。重新启动 R 后,错误消息将以英文显示。. 也许这有帮助!

对于 Mac 用户,我在 R 代表 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 应用程序,拜托了 注意,必须始终使用语言环境的‘ . UTF-8’版本, 否则 R 应用程序将无法正常工作。

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

您可能还希望了解例如 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)

如果您使用 Ubuntu,您将设置

LANGUAGE=en

在/etc/R/REnvironment. site 中。

在 Ubuntu 14.04 LTS 中,我必须从注释 #LANGUAGE=EN中删除 #
所有其他的选择对我都不起作用。

首先输入: System (“ default write org.R-project. R force.LANG en _ US. UTF-8”) 然后你会得到一个索引号(在我的例子中是127)

然后输入: Setenv (LANG = “ en”) 然后键入数字并输入 127

这可以在命令行中实现:

$ export LANG=en_US.UTF-8

以上的答案对我来说都不管用

一个简单的解决方案是在 bash 脚本中设置 export Lang = C。 我有一个类似的问题,默认语言是德语,所以它回到了英语。

你只需要在你的电脑上改变微软的基本语言!

与 r 一起按下 windows 按钮,并将下面的代码提示到打开的窗口中

Exe/name Microsoft. Language

加载要使用的语言包并更改选项。但要小心,这也会改变你的键盘布局!

对我来说:

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

如果您希望永远将终端中的 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,你会发现它的语言已经改为英语。

如果你想让语言回到原来的样子,只需要在 export LANG=en_US.UTF-8之前添加一个 #

对我来说唯一有效的方法就是完全卸载 R (确保也从 Programs 文件中删除它) ,然后安装它,但是在安装过程中要进行 取消选择消息转换。当我安装 R,随后 RCmdr,它最终出现在英语。

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

点击右下角的时间/日期 > 调整时间/日期 > 地区 > 将地区格式改为英国或美国

为了使它永久工作,在 R 和 RStudio (与赢10) , 一种方法是每次都在最初的后台自动运行脚本。

不再更改影响窗口的系统语言。 没有更多的 R 只是但在 Rstudio 失败。不再需要每次手动运行脚本。没有更多的管理权,但失败。没有更多的快捷设置,但失败。

第一步。 使用您的系统搜索,找到名为“ Rprofile”的文件

我的回答是

C: 程序文件 R-4.0.5库基础 R

C: 程序文件 R-4.0.5等

第二步。 编辑 C: Program Files R-4.0.5库 base R Rprofile

内容:

  • 这是系统 Rprofile 文件,它总是在启动时运行。
  • 可以在站点或用户 Rprofile 文件中放置其他命令
  • (看到了吗? 侧写) 诸如此类。

步骤3. 在脚本末尾添加 Sys.setenv (LANGUAGE = “ en”)

local({
Sys.setenv(LANGUAGE="en")
})

另外,如果您遇到授权/保存问题, 将此文件移动到桌面,并在编辑后替换原始文件。

这对我来说很有用,我用的是一台德语的 windows 10笔记本电脑,在这里我希望用英语返回日期:

Sys.setlocale("LC_TIME", "English")