R:在开始日期和结束日期之间创建日期序列时出错

时间:2020-02-10 22:55:01

标签: r dataframe data.table

我有一个如下数据框

  id  startdate  enddate
  1   01/01/2011 01/05/2011
  1   02/03/2012 02/05/2012
  2   03/04/2013 03/06/2013
  3   04/06/2014 04/09/2014

我要转换数据框以便创建以下内容:

  id   date
  1    01/01/2011
  1    01/02/2011
  1    01/03/2011
  1    01/04/2011
  1    01/05/2011
  1    02/03/2012
  1    02/04/2012
  1    02/05/2012
  2    03/04/2013
  2    03/05/2013
  2    03/06/2013 

....依此类推,以填充开始日期和结束日期之间的日期顺序

我尝试了一些代码,包括以下内容:

    one<-as.data.table(one)
    one[, startdate:=as.character(startdate)]
    one[, enddate:=as.character(enddate)]
    one[, startdate:=as.Date(startdate, format="%m/%d/%Y")]
    one[, enddate:=as.Date(enddate, format="%m/%d/%Y")]
    one<-as.data.frame(one)
    one%>%
      rowwise() %>%
      do(data.frame(id=.$id, date=seq(.$startdate,.$enddate,by="day")))

运行此命令时,出现以下错误: seq.int(0,to0-from,by)中的错误:“ to”必须为有限数字

这是为什么?我该如何修复这段代码?

0 个答案:

没有答案