【问题标题】:Variable as date in for loop [duplicate]变量作为for循环中的日期[重复]
【发布时间】:2020-09-25 12:18:21
【问题描述】:

我试图在 for 循环中 rbind 日期和另一个变量,但是,在最终数据集中,我不断得到像“15791”这样的数字,而不是日期。这是我的代码的样子:

uid <- 1:49
dates <- seq(as.Date("2013-03-27"), by = "day", length.out = 111)
dataset <- data.frame()
d <- as.Date(d, Origin = "1970-01-01")

for(u in uid){
  for(d in dates){
      dataset <- rbind(dataset, data.frame(uid = u, dates = d))
    }
}

【问题讨论】:

标签: r date for-loop rbind


【解决方案1】:

如果我理解正确的话,

data <- tibble() %>% 
          expand(
            uid=1:49,
            date=seq(as.Date("2013-03-27"), by = "day", length.out = 111)
          )

给你你想要的。当然,它会产生一个 5439 行的 tibble,而 111 x 49 是 5439:

# A tibble: 5,439 x 2
     uid date      
   <int> <date>    
 1     1 2013-03-27
 2     1 2013-03-28
 3     1 2013-03-29
 4     1 2013-03-30
 5     1 2013-03-31
 6     1 2013-04-01
 7     1 2013-04-02
 8     1 2013-04-03
 9     1 2013-04-04
10     1 2013-04-05

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-24
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-06
    相关资源
    最近更新 更多