如果我输入:
Sys.setlocale("LC_TIME", "fr_FR.UTF-8")
data.frame(day_number=1:7) %>%
mutate(day_of_week = wday(day_number, label = TRUE))
那么一周的第一天似乎是星期日(
Dim
),而法国人通常使用星期一作为一周的第一天。有没有办法用 setlocale
对其进行编码?
请参阅
?wday
的帮助:
周开始
一周开始的日期,遵循 ISO 约定:1 表示星期一,7 表示星期日(默认)。当 label = FALSE 且 week_start = 7 时,星期日返回的数字为 1,星期一返回的数字为 2,依此类推。当 label = TRUE 时,返回的值是一个因子,第一级为周开始(例如,如果 week_start = 7,则星期日) )。您可以设置 lubridate.week.start 选项来全局控制此参数。
所以你可以使用
wday(day_number, label = TRUE, week_start = 1)
或者跑步
options(lubridate.week.start = 1)
并将其设为默认值。