Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在另一个数据帧中匹配日期间隔_R_Dataframe - Fatal编程技术网

R 在另一个数据帧中匹配日期间隔

R 在另一个数据帧中匹配日期间隔,r,dataframe,R,Dataframe,我总结了一些数据,用R表示。我想以7天为间隔显示数据,x轴是一周的开始 汇总数据样本: structure(list(Date = structure(c(17843, 17843, 17844, 17846, 17846, 17847, 17847, 17847, 17847, 17848, 17848, 17871, 17871, 17871, 17871, 17872

我总结了一些数据,用R表示。我想以7天为间隔显示数据,x轴是一周的开始

汇总数据样本:

structure(list(Date = structure(c(17843, 17843, 17844, 17846, 
                              17846, 17847, 17847, 17847, 17847, 17848, 17848, 17871, 17871, 
                              17871, 17871, 17872, 17872, 17873, 17873, 17873, 17873, 17873, 
                              17944, 17945, 17945, 17945, 17945, 17945, 17945, 17945, 17945, 
                              17945, 17945), class = "Date"), Source = df <- structure(c(1L, 1L, 
                                                                                   2L, 1L, 4L, 1L, 3L, 2L, 2L, 1L, 2L, 1L, 1L, 2L, 2L, 1L, 2L, 1L, 
                                                                                   1L, 1L, 1L, 2L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("direct", 
                                                                                                                                                           "google organic", "other organic search", "PR_referral"), class = "factor"), 
           Revenue = c(1897, 999, 2077.23, 1023.73, 1048, 1897, 949, 
                       949, 999, 849.15, 2077.23, 799.2, 819.18, 865.13, 819.18, 
                       1517.6, 898.2, 2446, 239.2, 867.13, 1517.6, 869.13, 799.2, 
                       853.1, 799.2, 799.2, 799.2, 799.2, 799.2, 799.2, 799.2, 1652.3, 
                       1083.25)), row.names = c(NA, -33L), class = "data.frame")
我试图实现的是在
df
中添加一列,这是从
date\u interval
数据框引用的开始一周,用于观察
df$date

我认为这可能涉及使用
,但无法实现,一个不起作用的例子是:

converters %>%
  mutate(test = which(Date >= date_interval$week_beginning & Date <= date_interval$week_ending))
转换器%>%

mutate(test=which(Date>=Date\u interval$week\u start&Date据我所知,您希望创建一列,列中的第一天由
Date
列指定。如果是这样,您可以使用
lubridate::floor\u Date()
函数,即

converters %>%
  mutate(week_beginning = lubridate::floor_date(Date, unit = 'weeks'))

你看过Tidyverse吗?你可以从lubridate datetime按周分组,或者从日期获取工作日以确定开始和停止。我从lubridate使用了
week
-你得到了一个周数-这没有多大用处。因为周开始是从周二开始的
converts%%+mutate(周开始=润滑油::地板日期(日期,单位=‘周’)+2)
converters %>%
  mutate(week_beginning = lubridate::floor_date(Date, unit = 'weeks'))