วิธีเปลี่ยนการตั้งค่าภาษาใน R


110

ข้อความแสดงข้อผิดพลาดของฉันแสดงเป็นภาษาฝรั่งเศส ฉันจะเปลี่ยนการตั้งค่าภาษาของระบบเพื่อให้ข้อความแสดงข้อผิดพลาดแสดงเป็นภาษาอังกฤษได้อย่างไร?

คำตอบ:


115

คุณสามารถตั้งค่านี้ได้โดยใช้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 อีกครั้งเพื่อให้เอฟเฟกต์ thistake
agstudy

วิธีนี้ใช้ได้ดี แต่เมื่อเปิด R อีกครั้งมันจะกลับไปที่โลแคลของฉัน (ซึ่งเป็นภาษาอิตาลี)
SabDeM

1
@SabDeM - ใช่แน่นอน รับทราบข้อมูลของ agstudy ข้างต้นและตั้งค่าตัวแปรสภาพแวดล้อม: stat.ethz.ch/R-manual/R-devel/library/base/html/EnvVar.html
Chase

30

ในกรณีของ RStudio สำหรับ Windows ฉันสามารถเปลี่ยนภาษาได้สำเร็จตามคำแนะนำที่พบในR สำหรับคำถามที่พบบ่อยของ Windowsโดยเฉพาะอย่างยิ่งฉันเขียน:

language = EN

ภายในไฟล์Rconsole(ในการติดตั้งของฉันคือC:\Program Files\R\R-2.15.2\etc\Rconsole); Rscriptงานนี้ยังมีคำสั่ง

ตัวอย่างเช่นคุณสามารถค้นหาRconsoleไฟล์ด้วยสองคำสั่งนี้จากพรอมต์คำสั่ง:

cd \

dir Rconsole /s

อันแรกสร้างรูทเป็นไดเร็กทอรีปัจจุบันอันที่สองค้นหาRconsoleไฟล์

ในหน้าจอต่อไปนี้คุณมีไฟล์ในโฟลเดอร์RconsoleC:\Program Files\R\R-3.4.1\etc

คุณอาจมีมากกว่าหนึ่งตำแหน่งในกรณีนี้คุณสามารถแก้ไขRconsoleไฟล์ทั้งหมดได้

ใส่คำอธิบายภาพที่นี่

หลังจากนั้นคุณสามารถเปิดRconsoleไฟล์ด้วยโปรแกรมแก้ไขที่คุณชื่นชอบและมองหาบรรทัดlanguage =จากนั้นต่อท้ายENที่ท้ายบรรทัดนั้น

ในภาพหน้าจอต่อไปนี้บรรทัดที่น่าสนใจคือเลข 70 และคุณต้องต่อENท้าย ใส่คำอธิบายภาพที่นี่


ไม่ได้ผลสำหรับฉัน การเปลี่ยนไฟล์และการตั้งค่าภาษาเป็น EN จะไม่มีผลกับภาษาของข้อความแสดงข้อผิดพลาด ฉันเห็นว่ามันน่าจะเป็นเหตุผลที่จะใช้งานได้ แต่ฉันคิดว่าในระหว่างนี้ Windows มีคำสั่งการกำหนดค่าภาษาอื่น ๆ อีกหลายอย่าง (อาจเป็นภาษาของระบบรูปแบบแป้นพิมพ์ของระบบ) ที่โต้ตอบในรูปแบบที่ซับซ้อนและไม่โปร่งใส
0range

@ 0range คุณได้ลองcd \ และdir Rconsole /sค้นหาไฟล์หลาย ๆ ไฟล์หรือไม่?
Alessandro Jacopson

21

สำหรับผู้ใช้ mac ฉันพบสิ่งนี้ในR for Mac FAQ

หากคุณใช้การตั้งค่าที่ไม่ได้มาตรฐาน (เช่นภาษาที่แตกต่างจากรูปแบบ) คุณสามารถแทนที่การตรวจจับอัตโนมัติที่ดำเนินการได้โดยการตั้งค่าเริ่มต้นเป็น `` force.LANG '' เช่นตัวอย่างเช่น

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

เมื่อรันใน Terminal จะบังคับใช้การตั้งค่าภาษาอังกฤษแบบสหรัฐอเมริกาโดยไม่คำนึงถึงการตั้งค่าระบบ หากคุณไม่ทราบว่า Terminal คืออะไรคุณสามารถใช้คำสั่ง R นี้แทนได้:

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

แต่อย่าลืมออกจาก R และเริ่ม Rapp อีกครั้งในภายหลัง โปรดทราบว่าคุณต้องใช้โลแคลเวอร์ชัน ".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


นี่เป็นเรื่องจริง แต่ไม่มีประโยชน์มากนักเนื่องจากคุณต้องแก้ไขไฟล์นั้นจากเทอร์มินัล สำหรับ noobs อย่างฉัน googling นี่คือวิธี: พิมพ์sudo nano /etc/R/Renviron.siteลงในเทอร์มินัลแล้วตามด้วยรหัสผ่านของคุณเมื่อเทอร์มินัลขอให้คุณ จากนั้นคุณสามารถแก้ไขไฟล์นั้นได้ในเทอร์มินัล เพิ่มบรรทัด linellobocki กล่าวถึงแล้วกดctrl + xเพื่อออก จากนั้นพิมพ์yเพื่อยืนยันว่าคุณต้องการบันทึกการเปลี่ยนแปลงและกด Enter เพื่อยืนยันชื่อและไดเร็กทอรีของไฟล์
Peter Pan

ฉันจะทำสิ่งนี้ในสภาพแวดล้อมอนาคอนดาได้อย่างไร? คุณต้องรู้ว่าเมื่อใช้ซูเปอร์คอมพิวเตอร์เป็นเรื่องปกติในการติดตั้ง R และการอ้างอิงในเครื่องและอนาคอนดาก็ดีสำหรับสิ่งนั้น แต่ตอนนี้ฉันต้องตั้งค่า LANGUAGE เป็น 'en' และ IDK ซึ่งเป็นไฟล์ Renviron.site นี้
Sergio

มันใช้ได้กับฉัน (เทอร์มินัล) แต่ไฟล์คือ '~ / .Renviron.site`
Shrek Tan

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

วิธีง่ายๆคือการตั้งค่าการส่งออก Lang = C ในสคริปต์ทุบตีของคุณ ฉันมีปัญหาคล้ายกันที่ภาษาเริ่มต้นเป็นภาษาเยอรมันจึงเปลี่ยนกลับเป็นภาษาอังกฤษ


จาก R one can dosystem("export Lang=C")
jogo

นี่เป็นทางออกที่ดี ฉันใช้ R โดยใช้ anaconda และวิธีแก้ปัญหาของคุณได้ผลสำหรับฉัน
Sergio

3

หากคุณต้องการเปลี่ยนภาษา R ในเทอร์มินัลเป็นภาษาอังกฤษตลอดไปสิ่งนี้ใช้ได้ดีสำหรับฉันใน macOS:

เปิด terminal.app แล้วพูดว่า:

touch .bash_profile

แล้วพูดว่า:

open -a TextEdit.app .bash_profile

คำสั่งทั้งสองนี้จะช่วยคุณเปิดไฟล์ ".bash_profile" ใน TextEdit

เพิ่มสิ่งนี้ในไฟล์ ".bash_profile":

export LANG=en_US.UTF-8

จากนั้นบันทึกไฟล์เปิดเทอร์มินัลและพิมพ์อีกครั้งRคุณจะพบว่าภาษาได้เปลี่ยนเป็นภาษาอังกฤษแล้ว

หากคุณต้องการภาษากลับมาที่เดิมมันเป็นเพียงแค่เพิ่มก่อน#export LANG=en_US.UTF-8


1

สิ่งเดียวที่ใช้ได้ผลสำหรับฉันคือการถอนการติดตั้ง R ทั้งหมด (อย่าลืมลบออกจากไฟล์ Programs ด้วย) และติดตั้ง แต่ยกเลิกการเลือกการแปลข้อความในระหว่างกระบวนการติดตั้ง เมื่อฉันติดตั้ง R และต่อมา RCmdr ในที่สุดมันก็เป็นภาษาอังกฤษ


0

ใน Ubuntu 14.04 LTS ผมต้องลบจากการแสดงความคิดเห็น# ตัวเลือกอื่น ๆ ทั้งหมดไม่ได้ผลสำหรับฉัน#LANGUAGE=EN


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

ฉันใช้ R Studio บน Mac และไม่พบไฟล์ Rconsole ผมเลยใช้วิธีที่โหดกว่านี้และลบไฟล์ภาษาที่ไม่ต้องการออกจากแอพ R คุณต้องไปที่ Rapp ของคุณในโฟลเดอร์แอปพลิเคชันของคุณคลิกขวาแสดงเนื้อหาแพ็คเกจจากนั้น / เนื้อหา / ทรัพยากร / มีไฟล์ภาษาเช่น English.lproj หรือในกรณีของฉัน de.lproj ซึ่งฉันลบไปแล้ว หลังจากรีสตาร์ท R ข้อความแสดงข้อผิดพลาดจะปรากฏเป็นภาษาอังกฤษ .. อาจจะมีประโยชน์!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.