【发布时间】:2018-05-12 05:36:31
【问题描述】:
我已经从以下代码的其他 SO 答案中对信息进行了三角测量,但遇到了错误消息。搜索了类似的错误和解决方案,但无法弄清楚,因此感谢您的帮助。
对于每个组(“id”),我想获取连续行的开始时间之间的差异。
可重现的数据:
require(dplyr)
df <-data.frame(id=as.numeric(c("1","1","1","2","2","2")),
start= c("1/31/17 10:00","1/31/17 10:02","1/31/17 10:45",
"2/10/17 12:00", "2/10/17 12:20","2/11/17 09:40"))
time <- strptime(df$start, format = "%m/%d/%y %H:%M")
df %>%
group_by(id)%>%
mutate(diff = time - lag(time),
diff_mins = as.numeric(diff, units = 'mins'))
让我出错:
mutate_impl(.data, dots) 中的错误: 列
diff的长度必须为 3(组大小)或 1,而不是 6 另外:警告信息: 在 unclass(time1) - unclass(time2) : 较长的对象长度不是较短对象长度的倍数
【问题讨论】: