[r] How to change language settings in R

My error messages are displayed in French. How can I change my system language setting so the error messages will be displayed in English?

This question is related to r

The answer is


Change your current regional format to a different regional format in region settings on time&language settings in Windows by clicking on your time/date in lower right corner > adjust time/date > Region > change regional format to UK or US


A simple solution would be setting export Lang=C in your bash script. I had a similar issue where the default language was german so it reverted back to english.


You may also want to be aware of the difference between, for example, Sys.setenv(LANG = "ru") and 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"

If you are interested in changing the behaviour of functions that refer to one of these elements (e.g strptime to extract dates), you should use Sys.setlocale(). See ?Sys.setlocale for more details. In order to see all available languages on a linux system, you can run

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

For mac users, I found this on the R for Mac FAQ

If you use a non-standard setup (e.g. different language than formats), you can override the auto-detection performed by setting `force.LANG' defaults setting, such as for example

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

when run in Terminal it will enforce US-english setting regardless of the system setting. If you don't know what Terminal is you can use this R command instead:

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

but do not forget to quit R and start R.app again afterwards. Please note that you must always use `.UTF-8' version of the locale, otherwise R.app will not work properly.

This helped me to change my console language from Chinese to English.


you simply have to change the basic language of microsoft on your computer!

press the windows button together with r, and tip the following code into the window that is opened

control.exe /name Microsoft.Language

load the language package you want to use and change the options. but take care, this will change also your keyboard layout!


If you use Ubuntu you will set

LANGUAGE=en 

in /etc/R/Renviron.site.


In Ubuntu 14.04 LTS I had to remove the # from the comment #LANGUAGE=EN.
All other options din not work for me.


Im using R Studio on a Mac and I couldn't find the Rconsole file. So I took a more brutal way and just deleted the unwanted language files from the R app. You just have to go to your Rapp in your application Folder, right click, show package content then /contents/Resources/. There are the language files e.g. English.lproj or in my case de.lproj wich I deleted. After restarting R, error messages appear in English.. Maybe thats helpful!


type this first: system("defaults write org.R-project.R force.LANG en_US.UTF-8") then you will get a index number(in my case is 127)

then type: Sys.setenv(LANG = "en") then type the number and ENTER 127


If you want to change R's language in terminal to English forever, this works fine for me in macOS:

Open terminal.app, and say:

touch .bash_profile

Then say:

open -a TextEdit.app .bash_profile

These two commands will help you open ".bash_profile" file in TextEdit.

Add this to ".bash_profile" file:

export LANG=en_US.UTF-8

Then save the file, reopen terminal and type R, you will find it's language has changed to english.

If you want language come back to it's original, just simply add a # before export LANG=en_US.UTF-8.


In the case of RStudio for Windows I succeeded in changing the language following the instructions found in R for Windows FAQ, in particular I wrote:

language = EN

inside the file Rconsole (in my installation it is C:\Program Files\R\R-2.15.2\etc\Rconsole); this works also for the command Rscript.

For example you can locate the Rconsole file with this two commands from a command prompt:

cd \

dir Rconsole /s

The first one make the root as the current directory, the second one looks for the Rconsole file.

In the following screenshot you have that Rconsole file is in the folder C:\Program Files\R\R-3.4.1\etc.

You may have more than one location, in that case you may edit all the Rconsole files.

enter image description here

After that you can open the Rconsole file with your favorite editor and look for the line language = and then append EN at the end of that line.

In the following screenshot the interesting line is the number 70 and you have to append EN at the end of it. enter image description here


This works from command line :

$ export LANG=en_US.UTF-8

None of the other answers above worked for me


The only thing that worked for me was uninstalling R entirely (make sure to remove it from the Programs files as well), and install it, but unselect Message Translations during the installation process. When I installed R, and subsequently RCmdr, it finally came up in English.


For me worked:

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

Also working to get english messages:

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

To reset to german messages I used

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

Here is the start of my 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

on windows, when you have no admin right, just create a new program shortcut to Rgui.exe. Then in the properties of that shortcut, go to the 'Shortcut' tab and modify the target to include the system language of your choice, e.g. "C:\Program Files\R\R-3.5.3\bin\x64\Rgui.exe" LANGUAGE=en