如何在 R 中对日期进行迭代

How to make iterations over dates in R

这是我在 R 中遇到的一个更普遍的问题。假设我想为数据集 data 创建一个子集,其中包含第 1、...、10 天的前 10 天。在一天之内,我可以轻松地制作这样的子集

data_new <- subset(data, data$time == as.Date(as.character(2016-01-01)) )

但是假设我想要 2016 年 1 月的前 10 天。我尝试像这样循环

data_new <- matrix(ncol=2,nrow=1)
for(j in 1:10) {
    data_new[,j]= subset(data, data$time==as.Date(as.character(2016-01-j)))
}

但是由于术语 as.character(2016-01-j).

,此代码不能 运行 在 R 中

如何创建这样的子集?

你可以

data_new = subset(data, data$time %in% as.Date(paste0("2016-01-", 1:10)))