使用dplyr按周过滤的函数

使用dplyr按周过滤的函数,r,dplyr,R,Dplyr,我有一个关于周选择自动化的问题。目前,我使用 dat %>% filter(week >= 33) %>% ggplot(aes(date,transaction,group = 1)) + geom_line() 是否有一种方法可以创建一个函数,该函数以天为单位,从“周”字段中减去2,以自动填充前两周?伪代码: If today() = week 35 then "week" == 35 - 2 dat %>% filter(week

我有一个关于周选择自动化的问题。目前,我使用

dat %>%
  filter(week >= 33) %>%
ggplot(aes(date,transaction,group = 1)) +
  geom_line()
是否有一种方法可以创建一个函数,该函数以天为单位,从“周”字段中减去2,以自动填充前两周?伪代码:

If
today() = week 35
then "week" == 35 - 2

dat %>%
  filter(week >= "week" ) %>%
  ggplot(aes(date,transaction,group = 1)) +
  geom_line()
我们可以使用
Sys.Date()
获取今天的日期,从中提取周数并
过滤过去两周的数据

library(dplyr)
library(ggplot2)
todays_week <- lubridate::week(Sys.Date())

dat %>%
  filter(between(week, todays_week - 2, todays_week)) %>%
  ggplot(aes(date,transaction,group = 1)) +
  geom_line()
库(dplyr)
图书馆(GG2)
今天(每周)%
筛选(在(周、今天/周-2、今天/周)之间%>%
ggplot(aes(日期、交易、组=1))+
geom_线()
我们可以使用
today()
from
lubridate
获取今天的日期

library(dplyr)
library(ggplot2)
library(lubridate)
todays_week <-  week(today())
dat %>%
      filter(between(week, todays_week - 2, todays_week)) %>%
      ggplot(aes(date,transaction,group = 1)) +
      geom_line() 
库(dplyr)
图书馆(GG2)
图书馆(lubridate)
今天(每周)%
筛选(在(周、今天/周-2、今天/周)之间%>%
ggplot(aes(日期、交易、组=1))+
geom_线()