用于在日期之间迭代的循环

问题描述 投票:-1回答:1

我有下面的函数,它可以收集数据并将其解析为数据帧。

 df <- read_URL('2019-01-15','2019-01-01', token = token)

现在我想在以下日期的范围内迭代这个函数,并将所有的数据帧绑定在一起。这些日期。

 start_dates <- c(seq(as.Date("2019-01-01"), as.Date("2020-06-01"), by = "month"))
 end_dates <- start_dates + 15

我写了一个for循环,但不幸的是它没有工作。我的for循环是。

 mytempfile <- tempfile()


for (start_date in start_dates){
  for (end_date in end_dates){
    df <- read_URL(start_date,end_date, token = token)
    data <- rbind(df,mytempfile)
  }
}

另外,请注意,这个函数是无关紧要的,因为在尝试for循环之前,它显然是有效的,而且出于保密的原因,我没有包括它。任何帮助将被感激

r function loops date iterable
1个回答
2
投票

你可以尝试一下,比如为你的组合创建一个data.frame,这也可以让你跟踪你的列表。

dates_df = expand.grid(start=start_dates,end=end_dates)

data = lapply(1:nrow(dates_df),function(i){

    read_URL(dates_df$start[i],dates_df$end[i], token = token)
})

data= do.call(rbind,data)

我无法测试这段代码 因为你的例子无法重现。如果你能提供一个例子,那将会有很大的帮助。

© www.soinside.com 2019 - 2024. All rights reserved.