我在美国以外的地方使用R,并且一切工作都使用英语,但是weekdays()
的结果仍然是西类牙语:
Day <- seq(as.Date("2013-06-01"), by=1, len=30)
weekdays(Day)
[1] "sábado" "domingo" "lunes" "martes" "miércoles" (...)
关于如何用英语获得工作日有什么想法吗?
最佳答案
Date
和POSIX*t
对象的打印似乎受LC_TIME
语言环境类别控制。
在Windows上,您可以这样更改:
## First, save the current value so we can restore it later
Sys.getlocale("LC_TIME")
# [1] "English_United States.1252"
## First in Spanish
Sys.setlocale("LC_TIME","Spanish Modern Sort")
# [1] "Spanish_Spain.1252"
weekdays(Sys.Date()+0:6)
# [1] "lunes" "martes" "miércoles" "jueves" "viernes" "sábado"
# [7] "domingo"
## Then back to (US) English
Sys.setlocale("LC_TIME","English United States")
# [1] "English_United States.1252"
weekdays(Sys.Date()+0:6)
# [1] "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"
# [7] "Sunday"
在大多数* NIX上,等效项为:
Sys.setlocale("LC_TIME", "en_US")
特定的语言环境名称取决于操作系统,如
?Sys.setlocale
中所述。对于Windows接受的名称,请输入see here。对于Linux接受的名称,请使用see here。
关于r - 在R中获取英语的工作日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17031002/