将每周(7天)数据的数据帧聚合到R中的每月数据

将每周(7天)数据的数据帧聚合到R中的每月数据,r,time-series,lapply,zoo,R,Time Series,Lapply,Zoo,这个问题与我的这个职位有关。我基本上想要运行相同的函数,但也要跨列运行。但我想不出来。我的数据如下: start end X1 X2 X3 ... 1 2004-01-04 2004-01-10 54 63 10 ... 2 2004-01-11 2004-01-17 56 49 11 ... 3 2004-01-18 2004-01-24 46 39

这个问题与我的这个职位有关。我基本上想要运行相同的函数,但也要跨列运行。但我想不出来。我的数据如下:

  start      end              X1      X2     X3 ...
1 2004-01-04 2004-01-10       54      63     10 ...
2 2004-01-11 2004-01-17       56      49     11 ...
3 2004-01-18 2004-01-24       46      39     11 ...
4 2004-01-25 2004-01-31       45      37     10 ...
5 2004-02-01 2004-02-07       39      31     11 ...
6 2004-02-08 2004-02-14       41      30     11 ...
我尝试了以下方法:

我试图通过在
to.day
中不指定列来一次应用于整个数据帧
df[i,]
出错,下面的
df
返回所有
NA


to.dayto.day函数错误。看看它是如何在链接中完成的。是的,在链接中它被指定为一列,即X1[i],但在这里我想通过不使用名称来指定一列,以便以后可以在其他列中循环它,所以我使用了df[i,3],这也起作用,但当我更改为df[i,4]和X2[i](指同一列)时,我仍然得到了X1和df[,3]的每月值。所以我没能把专栏改到今天。谢谢格罗森迪克!我实际上尝试了df[I,3:ncol(df)],但它返回了所有NAs。然而,当我尝试df[I,3:5]时,它起了作用。所以我认为以前可能只有一个专栏引起了NAs的问题。
to.day<-function(i) with(df,zoo(df,seq(start[i],end[i],"day")))
z.day<-do.call(c,lapply(1:nrow(df),to.day))
z.day_df<-data.frame(z.day)
z.mon<-aggregate(z.day,as.yearmon,mean)