我有一个日期对象向量(yyyy-mm-dd
),我想确定其中是否有周末。有没有一个函数可以直接确定这一点?
我可以用wday()
in the 润滑封装然后判断返回值是否为01
or 07
,但是还有其他更直接的吗?
x <- seq(Sys.Date()-10, Sys.Date(), by = 1)
x[lubridate::wday(x) %in% c(1, 7)]
您可以使用基本 R 函数weekdays()
.
x <- seq(Sys.Date() - 10, Sys.Date(), by = 1)
weekdays(x, abbr = TRUE)
# [1] "Wed" "Thu" "Fri" "Sat" "Sun" "Mon" "Tue" "Wed" "Thu" "Fri" "Sat"
x[grepl("S(at|un)", weekdays(x))]
# [1] "2014-10-11" "2014-10-12" "2014-10-18"
据,直到...为止润滑 goes, wday()
has a label
争论。当设置为TRUE
,返回(缩写的)日期名称而不是数字。使用abbr
更改为全名的论点。
library(lubridate)
wday(x, label = TRUE)
# [1] Wed Thurs Fri Sat Sun Mon Tues Wed Thurs Fri Sat
# Levels: Sun < Mon < Tues < Wed < Thurs < Fri < Sat
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)