如何在R中设置日期的默认语言

时间:2016-09-06 03:24:27

标签: r

我使用了其他人写的R包。在包中,它应该创建一个文件名为" Mar.12"。但是我的系统中的文件名是"三月.12“,因为我在具有中文的操作系统上运行它(Windows 10)。我已在Rconsole文件中将显示语言更改为英语,但它没有帮助。我想知道是否有任何方法可以在不修改原始包的情况下将R中的默认日期更改为英语?

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:4)

更多信息: https://stat.ethz.ch/R-manual/R-devel/library/base/html/locales.html

您将通过以下方式获取所有本地变量:sessionInfo()

来自R doc:

的例子

Sys.getlocale()

Sys.getlocale(" LC_TIME&#34)

设置语言

  • Sys.setlocale(" LC_TIME","德语")
  • Sys.setlocale(" LC_TIME","英文")
  • Sys.setlocale(" LC_TIME","法语")

其他

  • Sys.setlocale(" LC_TIME"," de")#Solaris:详细信息取决于操作系统
  • Sys.setlocale(" LC_TIME"," de_DE")#许多Unix-alikes
  • Sys.setlocale(" LC_TIME"," de_DE.UTF-8")#Linux,macOS,其他Unix-alikes
  • Sys.setlocale(" LC_TIME"," de_DE.utf8")#some Linux version

答案 1 :(得分:2)

好的,作为Q& A网站,似乎需要一个答案。根据您的描述,它似乎是您的区域设置的问题。请阅读?locales了解更多信息。

您可以对此进行测试(对于各种格式,请阅读?strptime,并特别注意对区域设置敏感的人):

format(Sys.Date(), format = "%Y-%b-%d")
# [1] "2016- 9月-06"

输出有中文月份。如果我想更改显示,我需要将"LC_TIME"区域设置为"C"

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

然后就可以了:

format(Sys.Date(), "%Y-%b-%d")
# [1] "2016-Sep-06"

每次开始新的R会话时,都会返回原生设置。如果您想要永久性更改,请填写

.First <- function() {
   Sys.setlocale("LC_TIME", "C")
   }
<{1>}文件中的

。请阅读$(R RHOME)/etc/Rprofile.site,了解如何自定义R启动以及使用?Startup