根据多个日期列对数据框进行排序
Order the Data frame based on multiple date column
我有两列,其中包含开始日期和结束日期,我正在尝试根据日期之间的持续时间对数据框进行排序。
这里是一些要订购的日期数据:
StartDate EndDate columnAA
12-Feb-15 30-Dec-17
17-Jun-13 5-JUN-16
20-Jul-13 15-SEP-13
10-Feb-13 14-DEC-15
22-Mar-16 31-MAR-17
感谢您的任何建议。
例如,您可以让这个数据框包含 2 个日期
survey <- data.frame(date=c("2012/07/26","2012/07/25"),tx_start=c("2012/01/01","2012/01/01"))
计算它们之间的差异并创建一个新列
survey$date_diff <- as.Date(as.character(survey$date), format="%Y/%m/%d")-
as.Date(as.character(survey$tx_start), format="%Y/%m/%d")
根据差异对数据进行排序
newdata <- survey[order(survey$date_diff),]
如果你想降序使用
newdata <- survey[order(-survey$date_diff),]
我有两列,其中包含开始日期和结束日期,我正在尝试根据日期之间的持续时间对数据框进行排序。
这里是一些要订购的日期数据:
StartDate EndDate columnAA
12-Feb-15 30-Dec-17
17-Jun-13 5-JUN-16
20-Jul-13 15-SEP-13
10-Feb-13 14-DEC-15
22-Mar-16 31-MAR-17
感谢您的任何建议。
例如,您可以让这个数据框包含 2 个日期
survey <- data.frame(date=c("2012/07/26","2012/07/25"),tx_start=c("2012/01/01","2012/01/01"))
计算它们之间的差异并创建一个新列
survey$date_diff <- as.Date(as.character(survey$date), format="%Y/%m/%d")-
as.Date(as.character(survey$tx_start), format="%Y/%m/%d")
根据差异对数据进行排序
newdata <- survey[order(survey$date_diff),]
如果你想降序使用
newdata <- survey[order(-survey$date_diff),]