假设我有一个数据框df:
df <- read.table(header=T, text='
Date
03/12/2007
02/01/2008
01/02/2008
02/03/2008
')
library(lubridate)
df$Date = as_date(dmy(df$Date))
如何在每个行间隔中添加一列? (设置03/12/2007作为开始时间) 欲望输出表将是这样的:
Date d
03/12/2007 0
02/01/2008 30
01/02/2008 60
02/03/2008 90
谢谢!
答案 0 :(得分:1)
也许解决方法可能是:
df %>% mutate(dx=c(0, cumsum(as.numeric(diff(Date)))))
答案 1 :(得分:1)
df$d <- df$Date - min(df$Date)
这不要求日期按升序排列。