R中由于语言设置导致的错误
分类:R
最近在测试一段网上的代码,运行报错如下:
week start has to be Monday or Sunday
意思是说我的日期不是从周一或者周日开始的,但是我确认了下,开始的日期是周一,没问题。
然后我打开自定义的函数文件,查到该报错对应的代码如下:
weekStartMonday <- if(weekStartInput=="Monday") {TRUE} else if (weekStartInput=="Sunday") {FALSE} else {
stop( "week start has to be Monday or Sunday")
}
weekStartInput是用weekdays函数的结果。
然后我把输出结果改成了 weekStartInput,结果输入的是“星期一”。
原来weekdays的结果会随着系统语言设定而改变,在Rstudio中将语言改为英文
Sys.setlocale("LC_TIME", "English")
一切运行正常!