是否有将开始和结束时间列合并到R中的单个日期时间列(具有分组数据)

问题描述 投票:0回答:1

我有一个包含以下列的数据集:

开始时间,结束时间和ID

在按ID分组时,是否有将开始时间和结束时间合并到单个日期时间列的方法?

例如,我有这个:

            StartTime                Endtime                ID

          12/18/2019 5:20:23 AM 12/18/2019 5:20:24 AM       A
          12/18/2019 2:01:40 PM 12/18/2019 2:01:47 PM       A

我想要这样:

          DateTimeUTC                                      ID

          12/18/2019 5:20:23 AM                             A
          12/18/2019 5:20:24 AM                             A
          12/18/2019 2:01:40 PM                             A
          12/18/2019 2:01:47 PM                             A

我已经尝试过:

library(dplyr)

数据%>%group_by(ID)%>%合并(开始时间,结束时间)

此命令产生错误。我将对此进行进一步研究。任何帮助表示赞赏。谢谢。

r dplyr coalesce
1个回答
0
投票

我们可以使用pivot_longer执行此操作

 library(dplyr)
 library(tidyr)
 data %>%
     pivot_longer(cols = -ID, values_to = "DateTimeUTC") %>%
     select(DateTimeUTC, ID)
# A tibble: 4 x 2
#  DateTimeUTC           ID   
#  <chr>                 <chr>
#1 12/18/2019 5:20:23 AM A    
#2 12/18/2019 5:20:24 AM A    
#3 12/18/2019 2:01:40 PM A    
#4 12/18/2019 2:01:47 PM A   

数据

data <- structure(list(StartTime = c("12/18/2019 5:20:23 AM", "12/18/2019 2:01:40 PM"
), Endtime = c("12/18/2019 5:20:24 AM", "12/18/2019 2:01:47 PM"
), ID = c("A", "A")), class = "data.frame", row.names = c(NA, 
-2L))
© www.soinside.com 2019 - 2024. All rights reserved.